Auswahl und Mauszeiger überschreibt Zellhintergrundfarbe in einer SWT-Tabellenkomponente

8

Ich verwende SWT (und Eclipse RCP), um eine Tabelle zu rendern. Mein Problem ist, dass wenn ich den Hintergrund einer Zelle (eine ViewerCell in der Tat) ändere ich sehe, dass es die neue Farbe hat.

Mein Problem ist, dass, wenn ich eine Zeile in meiner Tabelle auswähle oder wenn ich über die Zeile mit meiner fraglichen Zelle schwebe, der Hintergrund der Auswahl / des Hover die Zellenfarbe überschreibt. Wie kann ich dies überschreiben?

    
Adam Arold 25.10.2011, 14:40
quelle

2 Antworten

3

Problem gelöst mit StyledCellLabelProvider. Sag mir, wenn du Code sehen willst. Bearbeiten: Wir verwenden es, um Validierungsfehler anzuzeigen, also ignoriere das Validierungskram hier:

%Vor%     
Adam Arold 07.12.2011, 21:44
quelle
0

Die einzige Option, die ich sehe, wäre, ein OwnerDrawLabelProvider zu verwenden und die ganze Zelle selbst zu malen.

Es gibt eine Möglichkeit, zu verhindern, dass die Tabelle ihren Auswahlhintergrund zeichnet, aber die Schriftfarbe ändert sich immer noch in ihre Auswahlfarbe. Je nach Betriebssystem können Sie also weißen Text auf weißem Hintergrund sehen, wenn eine Zeile ausgewählt ist.

    
p12t 26.10.2011 08:20
quelle

Tags und Links