Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi MouseOver / MouseLeave auf MenuItem (https://www.delphipraxis.net/148564-mouseover-mouseleave-auf-menuitem.html)

gmc616 4. Mär 2010 01:49


MouseOver / MouseLeave auf MenuItem
 
Hallo Delphi-Gemeinde,

Wie bekommt man raus, welcher MenuPunkt im MainMenü gerade mit der Maus überfahren wird?

Mein Ziel ist es im MenuItem.OnMouseOver eine Aktion zu starten und im MenuItem.OnMouseLeave die Aktion zu beenden.
Leider gibt es derartige Events in Delphi 2009 nicht.
Meine Experimente mit CM_MOUSELEAVE und CM_MOUSEENTER funktionieren mit (fast) jedem Control, nur nicht mit MenuItems.

Habt ihr Ideen wie ich den aktuell markierten (nicht geklickten!) MenuPunkt heraus bekomme?

Danke für eure Hilfe.

Luckie 4. Mär 2010 02:44

Re: MouseOver / MouseLeave auf MenuItem
 
Guck dir mal die Nachricht MSDN-Library durchsuchenWM_MENUSELECT an. Und dazu mein Menü Tutorial aus meinen Win32 API Tutorials für Delphi.

gmc616 4. Mär 2010 03:50

Re: MouseOver / MouseLeave auf MenuItem
 
Hallo Luckie,

du kannst dir sicher sein, dass du bzw. dein Website eines meiner ersten Anlaufstellen ist, wenn es um das Thema WinAPI und Delphi geht.
Deine Artikel haben mir schon bei vielen Dingen viel weiter geholfen.
Ein großes DANKE dafür, dass du dein Wissen in dieser Form zur Verfügung stellst!

Aber leider finde ich das "Menü Tutorial" nicht.

Das WM_MENUSELECT hat in meinen Tests aber auch nur auf einen Klick reagiert. Das OnClick-Event wird aber m.E.n. nur gefeuert, wenn ein Menuitem SubMenuItems besitzt.
Mein MainMenü besitzt aber keine Subs.

Ich schau mir das morgen noch mal genaueren an.

gmc616 19. Mär 2010 01:10

Re: MouseOver / MouseLeave auf MenuItem
 
So, endlich mal zu testen gekommen.
WM_MENUSELECT funktioniert nur mit Submenüs. Hab ich aber aber in meinem Fall nicht.

Auch muss ich das MouseExit irgendwie mitbekommen, was sich mMn. mit WM_MENUSELECT sowieso nicht realisieren ließe.

Es scheint aber eine Message zu geben, mit der es möglich ist das Hint zum MenuItem in einer Statusbar anzuzeigen.
Das muss man doch verbiegen können ... :gruebel:


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:21 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz