|
| БЕСПЛАТНАЯ ежедневная online лотерея! Выигрывай каждый день БЕСПЛАТНО! |
|
|
InsertMenu
The InsertMenu function inserts a new menu item into a menu, moving other items down the menu.
The InsertMenu function has been superseded by the InsertMenuItem function. You can still use InsertMenu, however, if you do not need any of the extended features of InsertMenuItem.
BOOL InsertMenu(
HMENU hMenu, // handle of menu UINT uPosition, // menu item that new menu item precedes UINT uFlags, // menu item flags UINT uIDNewItem, // menu item identifier or handle of drop-down menu or submenu LPCTSTR lpNewItem // menu item content );
Parameters
hMenu
Identifies the menu to be changed.
uPosition
Specifies the menu item before which the new menu item is to be inserted, as determined by the uFlags parameter.
uFlags
Specifies flags that control the interpretation of the uPosition parameter and the content, appearance, and behavior of the new menu item. This parameter must be a combination of one of the following required values and at least one of the values listed in the following Remarks section.
Value Description MF_BYCOMMAND Indicates that the uPosition parameter gives the identifier of the menu item. The MF_BYCOMMAND flag is the default if neither the MF_BYCOMMAND nor MF_BYPOSITION flag is specified. MF_BYPOSITION Indicates that the uPosition parameter gives the zero-based relative position of the new menu item. If uPosition is 0xFFFFFFFF, the new menu item is appended to the end of the menu.
uIDNewItem
Specifies either the identifier of the new menu item or, if the uFlags parameter has the MF_POPUP flag set, the handle of the drop-down menu or submenu.
lpNewItem
Specifies the content of the new menu item. The interpretation of lpNewItem depends on whether the uFlags parameter includes the MF_BITMAP, MF_OWNERDRAW, or MF_STRING flag, as follows:
Value Description MF_BITMAP Contains a bitmap handle. MF_OWNERDRAW Contains a 32-bit value supplied by the application that can be used to maintain additional data related to the menu item. The value is in the itemData member of the structure pointed to by the lparam parameter of the WM_MEASUREITEM or WM_DRAWITEM message sent when the menu item is created or its appearance is updated. MF_STRING Contains a pointer to a null-terminated string (the default).
Return Values
If the function succeeds, the return value is nonzero. If the function fails, the return value is zero. To get extended error information, call GetLastError.
Remarks
The application must call the DrawMenuBar function whenever a menu changes, whether or not the menu is in a displayed window. The following list describes the flags that can be set in the uFlags parameter:
Value Description MF_BITMAP Uses a bitmap as the menu item. The lpNewItem parameter contains the handle of the bitmap. MF_CHECKED Places a check mark next to the menu item. If the application provides check mark bitmaps (see SetMenuItemBitmaps), this flag displays the check mark bitmap next to the menu item. MF_DISABLED Disables the menu item so that it cannot be selected, but does not gray it. MF_ENABLED Enables the menu item so that it can be selected and restores it from its grayed state. MF_GRAYED Disables the menu item and grays it so it cannot be selected. MF_MENUBARBREAK Functions the same as the MF_MENUBREAK flag for a menu bar. For a drop-down menu, submenu, or shortcut menu, the new column is separated from the old column by a vertical line. MF_MENUBREAK Places the item on a new line (for menu bars) or in a new column (for a drop-down menu, submenu, or shortcut menu) without separating columns. MF_OWNERDRAW Specifies that the item is an owner-drawn item. Before the menu is displayed for the first time, the window that owns the menu receives a WM_MEASUREITEM message to retrieve the width and height of the menu item. The WM_DRAWITEM message is then sent to the window procedure of the owner window whenever the appearance of the menu item must be updated. MF_POPUP Specifies that the menu item opens a drop-down menu or submenu. The uIDNewItem parameter specifies the handle of the drop-down menu or submenu. This flag is used to add a menu name to a menu bar or a menu item that opens a submenu to a drop-down menu, submenu, or shortcut menu. MF_SEPARATOR Draws a horizontal dividing line. This flag is used only in a drop-down menu, submenu, or shortcut menu. The line cannot be grayed, disabled, or highlighted. The lpNewItem and uIDNewItem parameters are ignored. MF_STRING Specifies that the menu item is a text string; the lpNewItem parameter points to the string. MF_UNCHECKED Does not place a check mark next to the menu item (default). If the application supplies check mark bitmaps (see the SetMenuItemBitmaps function), this flag displays the unchecked bitmap next to the menu item.
The following groups of flags cannot be used together:
· MF_BYCOMMAND and MF_BYPOSITION · MF_DISABLED, MF_ENABLED, and MF_GRAYED · MF_BITMAP, MF_STRING, MF_OWNERDRAW, and MF_SEPARATOR · MF_MENUBARBREAK and MF_MENUBREAK · MF_CHECKED and MF_UNCHECKED
See Also
AppendMenu, DeleteMenu, DrawMenuBar, InsertMenuItem, ModifyMenu, RemoveMenu, SetMenuItemBitmaps, WM_DRAWITEM, WM_MEASUREITEM
| Пригласи друзей и счет твоего мобильника всегда будет положительным! |
| Пригласи друзей и счет твоего мобильника всегда будет положительным! |
InsertMenu
Функция InsertMenu включает новому пункту меню в меню, перемещение других пунктов вниз меню.
Функция InsertMenu заменена функцией InsertMenuItem. Вы можете все еще использовать InsertMenu, тем не менее, если Вам не нужно любая из расширенных характеристик InsertMenuItem.
BOOL InsertMenu(
HMENU hMenu, // РУЧКА меню UINT uPosition, // пункт меню, что новый пункт меню предшествует UINT uFlags, // флагам пункта меню UINT uIDNewItem, // ИДЕНТИФИКАТОР пункта меню или ручки капли-вниз меню или содержимое пункта меню субменю LPCTSTR lpNewItem // );
Параметры
hMenu
Идентифицирует меню, которое нужно изменяться.
uPosition
Определяет пункт меню перед которым новый пункт меню должен быть включен, как определено параметром uFlags.
uFlags
Определяет флаги, которые управляют интерпретацией параметра uPosition и содержимое, появление, и поведением нового пункта меню. Этот параметр должен быть комбинацией одного из следующего требовавшегося величины и по крайней мере одной из величин указанных в секции Замечаний следующего.
Описание Величины MF_BYCOMMAND Указывает, что параметр uPosition дает идентификатор пункта меню. Флаг MF_BYCOMMAND по умолчанию если ни MF_BYCOMMAND ни флаг MF_BYPOSITION определен. MF_BYPOSITION Указывает, что параметр uPosition дает базирующуюся нулевую относительную позицию нового пункта меню. Если uPosition - 0xFFFFFFFF, новый пункт меню добавлен в конец меню.
uIDNewItem
Определяет или идентификатор нового пункта меню или, если параметр uFlags имеет флаг MF_POPUP был установлен, ручка капли-вниз меню или субменю.
lpNewItem
Определяет содержимое нового пункта меню. Интерпретация lpNewItem зависит от включает параметр uFlags MF_BITMAP, MF_OWNERDRAW, или флаг MF_STRING, следующим образом:
Величина Description MF_BITMAP Содержит ручку побитового отображения. MF_OWNERDRAW Содержит 32- битовую величину поставленную приложением, которое может быть использовано, чтобы поддерживать дополнительные данные имело отношение к пункту меню. Величина - в элементе itemData структуры указанной, чтобы параметром lparam WM_MEASUREITEM или сообщение WM_DRAWITEM посылало когда пункт меню создан или появление скорректировано. MF_STRING Содержит указатель в недействительный расторгнутую строку ( по умолчанию).
Обратные Величины
Если функция добивается успеха, обратная величина ненулевая. Если функция терпит неудачу, обратная величина нулевая. Для того, чтобы расширять информацию ошибки, вызовите GetLastError.
Замечания
Приложение должно вызвать функцию DrawMenuBar всякий раз, когда меню изменяет, во всяком случае меню - в отображаемом окне. Следующее списка описывает флаги, которые могут быть установлены в параметре uFlags:
Описание Величины MF_BITMAP Использует побитовое отображение как пункт меню. Параметр lpNewItem содержит ручку побитового отображения. MF_CHECKED Устанавливает контрольную отметку около пункта меню. Если приложение обеспечивает контрольные побитовые отображения отметки (смотри SetMenuItemBitmaps), этот флаг отображает контрольное побитовое отображение отметки около пункта меню. MF_DISABLED Выводит из строя пункт меню чтобы не может быть выбрано, но не делать серым это. MF_ENABLED Приспосабливается пункт меню чтобы может быть выбрано и восстановление это из своего grayed состояния. MF_GRAYED Выводит из строя пункт меню и серый это, так что не может быть выбрано. MF_MENUBARBREAK Функционирует такой же как и флаг MF_MENUBREAK для зоны меню. Для капли-вниз меню, субменю, или сокращенного меню, новый столбец выделен из старого столбца вертикальной строкой. MF_MENUBREAK Устанавливает пункт в новой строке (для строка меню) или в новом столбце (для капли-вниз меню, субменю, или сокращенного меню) не разделяя столбцы. MF_OWNERDRAW Определяет, что пункт является сделанным пунктом владельца. Прежде, чем меню будет отобразиться впервые, окно, которое обладает приемникам меню сообщением WM_MEASUREITEM, чтобы извлекать ширину и высоту пункта меню. Сообщение WM_DRAWITEM - затем посланное в процедуру окна окна владельца всякий раз, когда появление пункта меню должно быть скорректировано. MF_POPUP Определяет, что пункт меню открывает каплю-вниз меню или субменю. Параметр uIDNewItem определяет ручку капли-вниз меню или субменю. Этот флаг использован, чтобы добавлять имени меню к зоне меню или пункт меню, которые открывают субменю в каплю-вниз меню, субменю, или сокращенное меню. MF_SEPARATOR Делает горизонтальным делением строки. Этот флаг используется только в капле-вниз меню, субменю, или сокращенном меню. Линия Не может grayed, выведен из строя, или выделен. lpNewItem И параметры uIDNewItem проигнорированы. MF_STRING Определяет, что пункт меню является текстовой строкой; параметр lpNewItem указывает на строку. MF_UNCHECKED не устанавливает контрольную отметку около пункта меню (умолчания). Если приложение поставляет контрольные побитовые отображения отметки (смотри функцию SetMenuItemBitmaps), этот флаг отображает неконтролируемое побитовое отображение около пункта меню.
Следующие группы флагов не могут использоваться вместе:
MF_BYCOMMAND и MF_BYPOSITION MF_DISABLED, MF_ENABLED, и MF_GRAYED MF_BITMAP, MF_STRING, MF_OWNERDRAW, и MF_SEPARATOR MF_MENUBARBREAK и MF_MENUBREAK MF_CHECKED и MF_UNCHECKED
Смотри Также
AppendMenu, DeleteMenu, DrawMenuBar, InsertMenuItem, ModifyMenu, RemoveMenu, SetMenuItemBitmaps, WM_DRAWITEM, WM_MEASUREITEM
|
|
|
|
| |