Шаг 857 - CMenu::LoadMenu

BOOL LoadMenu( LPCTSTR lpszResourceName );
BOOL LoadMenu( UINT nIDResource );

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

Параметры
lpszResourceName
Указатель на строку с нулевым символом в конце, которая содержит имя ресурса меню загрузиться.
nIDResource
Определяет меню ID ресурса меню загрузиться.

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

Пример

// CMainFrame::OnReplaceMenu() - драйвер команды меню для CMainFrame.
// Класс, который в свою очередь является классом наследником от CFrameWnd. Это загружается новый
// ресурс меню и заменяет SDI строку меню окна прикладной программы 
// этим новым меню. CMainFrame - класс порожденный от CFrameWnd.

void CMainFrame::OnReplaceMenu() 
{
	// Загрузить новое меню.
	m_NewMenu.LoadMenu(IDR_SHORT_MENU);
	ASSERT(m_NewMenu);

	// Удалите и уничтожьте старое меню
	SetMenu(NULL);
	::DestroyMenu(m_hMenuDefault);

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

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

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