Menü-Einträge aktivieren und deaktivieren


Zum Aktivieren und Deaktivieren von Menü-Items bietet das API die Funktion EnableMenuItem. Dieser Funktion übergeben Sie zuerst das Handle des Menüs. Der zweite Parameter bezeichnet die Item-ID des Eintrags, der aktiviert oder deaktiviert werden soll. Und der letzte Parameter gibt dann genau diesen Status an. Die beiden am häufigsten benutzten Flags werden wohl MF_ENABLED und MF_GRAYED sein, über weitere gibt die Hilfe wie gewohnt Auskunft. Im Code sieht das dann so aus:

WM_COMMAND:
  if hiword(wParam) = BN_CLICKED then
    case loword(wParam) of
      IDC_ENABLE:
        EnableMenuItem(hMenu, IDM_ITEM1, MF_ENABLED);
      IDC_DISABLE:
        EnableMenuItem(hMenu, IDM_ITEM1, MF_GRAYED);
    end;