Контрольная работа: Сообщения меню приложения Windows

"Disable exit"

};

static UINT nIndex = 0;

switch (Message)

{

case WM_COMMAND:

switch (wParam)

{

case IDM_Enable_Disable:

EnableMenuItem (hFileMenu, IDM_Exit, MF_BYCOMMAND | nFlag);

nFlag = (nFlag == MF_ENABLED)? MF_GRAYED: MF_ENABLED;

nIndex = (nIndex == 0)? 1: 0;

ModifyMenu (hFileMenu, IDM_Enable_Disable, MF_BYCOMMAND | MF_STRING, IDM_Enable_Disable, pContent [nIndex]);

break;

case IDM_Exit:

DestroyWindow (hWnd);

break;

}

….

}

Как видно из примера, при получении WM_COMMAND, младшее слово wParam которого равно равно IDM_Enable_Disable, производятся следующие действия:

с помощью функции EnableMenuItem () запрещается или делается доступным элемент "Exit";

с помощью функции ModifyMenu () изменяется текст элемента, выбор которого приводит к состоянию элемента "Exit".

Функция EnableMenuItem () позволяет изменять состояние элемента (разрешенный, запрещенный, "серый") меню по своему усмотрению. Синтаксис функции:

BOOL EnableMenuItem (HMENU hMenu, UINT uItem, UINT uFlags)

Параметры:

hMenu - хэндл меню, которому принадлежит пункт меню.

uItem - пункт меню, состояние которого изменяется.

uFlags - комбинация битовых флагов, определяющее новое состояние uItem пункта меню. Флаг MF_BYCOMMAND показывает, значение представляет собой идентификатор пункта меню.

К-во Просмотров: 263
Бесплатно скачать Контрольная работа: Сообщения меню приложения Windows