Blinkende Hintergrundzeilen von TableViewer oder TreeViewer in SWT

9

Ich brauche einen blinkenden Hintergrund (rot, vielleicht mehr Farben) für Zeilen in einem TableViewer / TreeViewer. Was sind die besten Optionen?

Es kann mehr als eine Zeile blinken, das blinkende muss synchron sein und ich brauche zwei blinkende Modi, schnell und langsam.

    
Mauli 17.12.2009, 10:16
quelle

3 Antworten

4

Ich würde etwas Ähnliches tun. Aktualisieren Sie die Elemente, für die Sie die Farben in einem regelmäßigen Intervall ändern müssen. Bei jedem Update wechseln Sie die Farben je nachdem, wie sie blinken sollen.

%Vor%

und der von Ihnen beschriftete Provider implementieren IColorProvider.

    
Kire Haglin 19.12.2009 05:47
quelle
1

Howdy, das ist ein schneller Hack, der die Idee zeigt, in vielerlei Hinsicht verbesserungsfähig. Ich zeige den drei Klassen die Arbeit. Wenn Sie möchten, kann ich ein exportiertes Quell-Plugin bereitstellen, das morgen in Ihrer Eclipse-Workbench installiert werden kann. Hier sind die Kernklassen:

%Vor%

Dies ist eine Beispielmodellklasse. Der Blink-Status wird im Objekt gespeichert. Sie können dies jedoch verbessern, indem Sie eine Art Adapter verwenden:

%Vor%

Und schließlich ein TableViewer, der in einer View eingebettet ist und die beiden obigen verwendet:

%Vor%     
zedoo 17.12.2009 23:55
quelle
0

Sie sollten eine Konstruktion haben, die ungefähr so ​​aussieht:

%Vor%

Wenn% code_% angezeigt wird, sollte Shell aufgerufen werden. Wenn es verfügbar ist, rufen Sie start() .

Beachten Sie, dass ich das nicht wirklich getestet habe; es ist ein Java-Pseudocode. Wenn Sie die Zeilenfarbe nicht mit der vorgeschlagenen stop() oben festlegen können, könnten Sie vielleicht ein Widget einfügen und ein setForegroundColor() -Ereignis definieren.

    
Paul Lammertsma 17.12.2009 22:24
quelle

Tags und Links