Menubar abdaten



  • hi all,

    ich möchte in einem VC6 projekt die menues abhängig vom programmstatus dimmen (grey) bzw aktivieren. nun kann man das machen,allerdings wird der erfolg erst sichtbar, wenn man das entsprechende menue das nächste mal aktiviert. gibt es eine möglichkeit das dimmen oder aktivieren eines menues (nicht der einzelnen einträge eines menues!)der menubar sofort sichtbar werden zu lassen?

    ehrig



  • Hi,
    hier eine Methode zum Updaten der Menübar:

    void DeineAnwendung::Refresh_Menu()
    {
    CWnd* pMain = AfxGetMainWnd();
    CString text;
    CMenu* pMenu = pMain -> GetMenu();
    
    // Menue ändern
    pMenu ->ModifyMenu(POS_FILE, MF_BYPOSITION | MF_ENABLED, POS_XY, "DeinEintrag");
    // Menueunterpunkt ändern
    pMenu ->ModifyMenu(ID_FILE_NEW, MF_BYCOMMAND | MF_ENABLED, ID_XYZ, "DeinMenuepunkt");
    
    // Menue neu zeichnen
    pMain ->DrawMenuBar();
    }
    

    Wie Du dem Code entnehmen kannst, zeichnest Du mit DrawMenueBar() das neue Menue zur Laufzeit deines Prog's.
    Viel Spaß noch
    Thomas


Log in to reply