Шаг 564 - CMenu::CreateMenu

BOOL CreateMenu( );

Возвращаемое значение
Отлично от нуля если меню было создано успешно, иначе 0.

Замечания
Создает меню и присоединяет его объекту CMenu.
Меню первоначально пустое. Пункты меню могут быть добавлены, используя AppendMenu или InsertMenu функцию.
Если меню назначено к окну оно автоматически разрушено, когда окно разрушено.
Перед выходом, прикладная программа должна освободить ресурсы системы, связанные с меню если меню не назначено к окну. Прикладная программа освобождает меню вызывая DestroyMenu функцию.

Пример

// Этот код  ниже показывает, как создать новое меню для
// окна прикладной программы  используя CreateMenu() и CreatePopupMenu().
// Затем, созданное меню заменит текущее меню
// прикладная программы. Старое меню будет разрушено  DestroyMenu ().
// Кодовый фрагмент ниже выполнен в классе поражденным от CFrameWnd.


// Создать новое меню для окна прикладной программы.
VERIFY(m_NewMenu.CreateMenu());

// Создать "File" всплывающее меню  и вставить это всплывающее меню в
// новое меню окна прикладной программы. В меню "File" только
// один пункт меню  "Exit".
VERIFY(m_FileMenu.CreatePopupMenu());
m_FileMenu.AppendMenu(MF_STRING, ID_APP_EXIT, (LPCTSTR)"E&xit");
m_NewMenu.AppendMenu(MF_POPUP, (UINT) m_FileMenu.m_hMenu, "&File");

// Удалить  старое меню.
SetMenu(NULL);
CMenu* old_menu = CMenu::FromHandle(m_hMenuDefault);
old_menu->DestroyMenu();

// Добавить новое меню
SetMenu(&m_NewMenu);

// Назначьте заданное по умолчанию меню.
m_hMenuDefault = m_NewMenu.m_hMenu;


Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем - 19.01.2002