Шаг 864 - CMenu::AppendMenu

BOOL AppendMenu( UINT nFlags, UINT nIDNewItem = 0, LPCTSTR lpszNewItem = NULL );
BOOL AppendMenu( UINT nFlags, UINT nIDNewItem, const CBitmap* pBmp );

Возвращаемое значение
Отлично от нуля, если функция успешна, иначе 0.

Параметры
nFlags
Определяет информацию относительно состояния нового пункта меню, когда это добавлено к меню. Это состоит из одного или большее количество значений, перечисленных в разделе Замечаний.
nIDNewItem
Определяет или команду ID нового пункта меню или, если nFlags установлен к MF_POPUP, дескриптор меню (HMENU) всплывающего меню. nIDNewItem параметр игнорируется (не необходим) если nFlags установлен к MF_SEPARATOR.
lpszNewItem
Определяет содержание нового пункта меню. nFlags параметр используется, чтобы интерпретировать lpszNewItem следующим способом:

pBmp
Указатель на объект CBitmap, который будет использоваться как пункт меню.

Замечания
Конкатенирует новый элемент к концу меню. Прикладная программа может определять состояние пункта меню, устанавливая значения в nFlags. Когда nIDNewItem определяет всплывающее меню, это становится частью меню, для которого это конкатенировано. Если то меню разрушено, конкатенированное меню будет также разрушено. Конкатенированное меню должно отсоединиться из объекта CMenu, чтобы избежать конфликта. Обратите внимание, что MF_STRING и MF_OWNERDRAW не допустим для растровой версии AppendMenu.
Следующий список описывает флажки, которые могут быть установлены в nFlags:

Каждая из следующих групп вносит в список флажки, которые являются взаимно исключительными и не могут использоваться вместе:

 
MF_DISABLED, MF_ENABLED, и MF_GRAYED
MF_STRING, MF_OWNERDRAW, MF_SEPARATOR, и растровая версия
MF_MENUBARBREAK и MF_MENUBREAK
MF_CHECKED и MF_UNCHECKED 

Всякий раз, когда меню, которое постоянно находится в окне, изменено (отображается или нет окно), прикладная программа должна вызвать CWnd::DrawMenuBar.


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