Menü-Designer
1. Okt 2009, 12:40
Hallo,
ich arbeite seit ein paar Tagen an einem Menü-Designer (ähnlich dem von Delphi). Das Hauptmenü wird dynamisch erstellt. Mit dem Designer soll es möglich sein, Menüeinträge aus- oder einzublenden (durch einen Klick auf einen Menüeintrag). Damit das Menü nach einem MouseUp nicht geschlossen wird, habe ich einen Message-Hook installiert, der die MouseUp-Nachricht nicht weiterleitet. Somit bleibt das Sub-Menü schon mal offen. Der Hook fängt auch MouseDown-Botschaften ab. Mit der schalte ich den Haken vor dem Menüeintrag ein und aus.
Jetzt zu meinem Problem: Erst wenn ich die Maus zum nächsten Menüeintrag des geöffneten Sub-Menüs bewege, wird der Status des zuvor angeklickten Menüeintrags aktualisiert, d.h. das Neuzeichnen des Menüs erfolgt nicht gleich nach dem Klick auf einen Menüeintrag. Wie kann ich das geöffnete Sub-Menü neuzeichnen? Mit OnDraw Methoden habe ich es schon versucht. Die Methode wird auch aufgerufen, allerdings scheint der Menüeintrag nicht "checked" zu sein.
|