Menü deaktiviert sich nicht...
-
Hi,
EnableMenuItem(LoadMenu(m_hInstance, MAKEINTRESOURCE(IDR_POPUP)), ID_POPUP_SEND_PC1, MF_DISABLED);
ID_POPUP_SEND_PC1 ist in einem PopupMenü drin, das also so aufklappt.
Dieses PopupMenu ist in einem Obermenü drin, IDR_POPUP, also so eins was man als Name auch immer im normalen Systemmenü sieht.Tja, das Problem ist einfach, das Menüitem daktiviert sich einfach nicht.
Das Menü wird danach aber irgendwie trotzdem instabil, d.h. wenn ich drüberschweife und danach beende, dann gibt es einen Fehler, lasse ich es aber nach Ausführung des Befehls einfach so, wie es ist, so passiert nachher nichts.
Naja, aber auf alle Fälle klappt es nicht so wie ich will, dass es einfach grau wird.
MfG MAV
-
MF_GRAYED?
-
Leider nein, auch mit MF_GRAYED klappt es nicht.
Auf einer japanischen Seite fand ich die Information, dass MF_BYCOMMAND auch noch dabei stehen musste.
-
Hm, ok, also es geht jetzt immernoch nicht, aber ich bin ein Stück weiter.
Ich verwende dieses dumme Menü einerseits als Menü eines Fensterds und andererseits als PopupMenü (rechte maustaste auf Trayicon).
Deaktiviere ich mit:
EnableMenuItem(GetMenu(m_hWnd),ID_POPUP_ABOUT, MF_BYCOMMAND | MF_GRAYED | MF_DISABLED);
so wirkt sich das aber leider nur auf das Menü des Fensters und nicht auf das TrayIcon-Menü aus.
Mf gmAV
-
MF_DISABLED brauchst Du nicht, da MF_GRAYED das bereits erledigt.
Eigentlich sollte es reichen, wenn Du EnableMenuItem auch auf das TrayIcon-PopUp-Menu anwendest.
-
ladest du das Menü für Tray neu oder verwendest du den direkten Handle von deinem Fester? Ich frage weil ich zwei verschiedene Versionen von EnableMenuItem sehe - mit und ohne LoadMenu