Laden...

ToolTip und Mausbewegungen

Erstellt von LonelyPixel vor 14 Jahren Letzter Beitrag vor 14 Jahren 1.054 Views
L
LonelyPixel Themenstarter:in
333 Beiträge seit 2007
vor 14 Jahren
ToolTip und Mausbewegungen

Hallo,

ich schreibe gerade ein UserControl, in dem selbstgezeichnete Rechtecke mit einem Text drin angezeigt werden. Die Größe der Rechtecke ist vorgegeben und es kann daher vorkommen, dass der Text nicht hineinpasst. Dann soll beim Drüberfahren mit der Maus über das Rechteck ein ToolTip erscheinen, der den ganzen Text anzeigt.

Soweit geht das ja alles. Nur gibt es das Problem, dass dieser ToolTip immer für die vorgesehene Zeit stehen bleibt, auch wenn mittlerweile mit Alt+Tab das Fenster gewechselt wurde. Daher habe ich einen weiteren Event-Handler hinzugefügt, der den ToolTip wieder ausblendet, sobald die Maus das UserControl verlässt.

Leider verlässt die Maus das UserControl formell auch dann, wenn sie über dem ToolTip ist. Oder andersherum: wenn das ToolTip unter der Maus erscheint. In diesem Fall wird das ToolTip sofort wieder ausgeblendet, um es eine Sekunde später (mein Timer) nochmal zu versuchen.

Da ich an der Stelle später noch längere Texte anzeigen möchte, wäre es aber sehr ungünstig, wenn die nicht größer als das Rechteck sein dürfen. Es ist aber auch blöd, wenn der ToolTip länger angezeigt bleibt als es sinnvoll erscheint. Was kann man da tun?

Da die ToolTip-Klasse keine Mouse-Ereignisse anbietet, kann ich auch nicht darauf reagieren...

Gelöschter Account
vor 14 Jahren

lasse den tooltip ein stückchen neben deiner mouse erscheinen und beim mousemove vom control verschiebst du den tooltip einfach entsprechend.

L
LonelyPixel Themenstarter:in
333 Beiträge seit 2007
vor 14 Jahren

Also den ToolTip unter [edit: neben, seitlich versetzt] dem Mauszeiger anzeigen? Hm, ich fand es schön, den ToolTip genau da anzuzeigen, wo der abgeschnittene Text steht.

Wenn man z. B. in der MSDN-Hilfe im Index die Maus über einen abgeschnittenen Text fährt, erscheint der Text ja auch genau über dem Listeneintrag, verschwindet aber genau dann, wenn man das Rechteck des Listeneintrags verlässt. Die Maus über dem ToolTip blendet es nicht aus und bei Alt+Tab bleibt es nicht stehen. Genauso hätte ich das auch gerne. 😃