# SWT: Drop-Down Menü-Einträge mit Tooltip hervorheben



## Studdi23 (8. Okt 2012)

Hallo,

ich habe eine Combo (die Rede ist von: org.eclipse.swt.widgets.Combo) mit vielen unterschiedlichen langen Einträgen erstellt. Da einige Einträge viel zu groß für das Parent Composite sind, habe ich die Größe der Combo begrenzt. Beim Anzeigen des Drop-Down Menüs werden nun aber horizontale und vertikale Scrollbalken angezeigt. So daß mann immer nach link und rechts scrollen muß um den Text lesen zu können, was natürlich total nervig ist. Nun möchte ich beim Mouse Over über einen Eintrag, den entsprechenden Text als Tooltip hervorheben, damit der gesamte Text vor dem Selektieren für den Benutzer sichtbar ist. Ich suche schon die ganze Zeit nach der Klasse, die für das Rendern des Combo DDMs verantwortlich ist. Ein Blick auf die Implementierung der Klasse hat mir auch nicht viel weitergeholfen, da fast nur nativer Code aufgerufen wird. Kann mir jemand verraten ob und wie es möglich ist, das Verhalten der Drop-Down Anzeige zu ändern. Man muß das doch irgendwie an die eigenen Bedürfnisse anspassen können!?

Gruß
Studdi


----------



## Gast2 (9. Okt 2012)

Benutze von JFace den ComboViewer dem kannst du einen LabelProvider setzen bei dem du alles machen kannst.
Eclipse JFace Overview


----------



## Studdi23 (9. Okt 2012)

Hallo SirWayne,

zunächst mal danke für die Antwort. Der ComboViewer kann tatsächlich einiges mehr als die Combo, aber was ich möchte kann dieser leider auch nicht. Und zwar benötige ich einen Listener, der mir das Objekt zurückgibt welches sich bei aufgeklapptem Menü gerade über dem Mauszeiger befindet. Der entsprechende Eintrag wird in diesem Augenblick gehighlightet, wird demenstprechend also schon mal als Selektion erkannt. Jetzt möchte ich weitere Verhalten beim Mouse Over hinzufügen und benötige die Klasse die das ermöglicht. Der ComboViewer reagiert genau wie die Combo selbst erst nachdem ich auf einen Eintrag geklickt, sprich ausgewählt, habe und das ist bereits zu spät.


----------



## Gast2 (9. Okt 2012)

Studdi23 hat gesagt.:


> Hallo SirWayne,
> 
> zunächst mal danke für die Antwort. Der ComboViewer kann tatsächlich einiges mehr als die Combo, aber was ich möchte kann dieser leider auch nicht. Und zwar benötige ich einen Listener, der mir das Objekt zurückgibt welches sich bei aufgeklapptem Menü gerade über dem Mauszeiger befindet. Der entsprechende Eintrag wird in diesem Augenblick gehighlightet, wird demenstprechend also schon mal als Selektion erkannt. Jetzt möchte ich weitere Verhalten beim Mouse Over hinzufügen und benötige die Klasse die das ermöglicht. Der ComboViewer reagiert genau wie die Combo selbst erst nachdem ich auf einen Eintrag geklickt, sprich ausgewählt, habe und das ist bereits zu spät.



Keine Ahnung was du genau machen willst, aber schau dir die LabelProvider an es gibt zig Stück und mit einem kannst du komplett alles selber zeichnen...
Aber bei einem LabeProvider bekommst du immer das aktuelle Element also zeig mal Code was du gemacht hast?


----------

