Condividi tramite


CMenu::CreateMenu

Crea un menu e lo aggiunge all'oggetto CMenu.

BOOL CreateMenu( );

Valore restituito

Diverso da zero se il menu è stato creato correttamente; in caso contrario 0.

Note

Il menu viene inizialmente vuota. Le voci di menu possono essere aggiunti tramite la funzione membro InsertMenu o AppendMenu.

Se il menu viene assegnato a una finestra, viene automaticamente distrutto quando la finestra viene distrutta.

Prima di uscire, un'applicazione deve liberare le risorse di sistema associate a un menu se il menu non viene assegnato a una finestra. Un'applicazione libera un menu chiama la funzione membro DestroyMenu.

Esempio

// The code fragment below shows how to create a new menu for the 
// application window using CreateMenu() and CreatePopupMenu(). 
// Then, the created menu will replace the current menu of the 
// application. The old menu will be destroyed with DestroyMenu(). 
// NOTE: The code fragment below is done in a CFrameWnd-derived class. 

// Create a new menu for the application window.
VERIFY(m_NewMenu.CreateMenu());

// Create a "File" popup menu and insert this popup menu to the
// new menu of the application window. The "File" menu has only
// one menu item, i.e. "Exit".
VERIFY(m_FileMenu.CreatePopupMenu());
m_FileMenu.AppendMenu(MF_STRING, ID_APP_EXIT, _T("E&xit"));
m_NewMenu.AppendMenu(MF_POPUP, (UINT_PTR)m_FileMenu.m_hMenu, _T("&File"));

// Remove and destroy old menu
SetMenu(NULL);
CMenu* old_menu = CMenu::FromHandle(m_hMenuDefault);
old_menu->DestroyMenu();

// Add new menu.
SetMenu(&m_NewMenu);

// Assign default menu
m_hMenuDefault = m_NewMenu.m_hMenu;

Requisiti

Header: afxwin.h

Vedere anche

Riferimenti

Classe CMenu

Grafico delle gerarchie

CMenu::CMenu

CMenu::DestroyMenu

CMenu::InsertMenu

CWnd::SetMenu

CreateMenu

CMenu::AppendMenu