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.
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.
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%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.
Tags und Links java swt eclipse-rcp