CopyCursor, DrawIcon, DrawIconEx. 5 страница
Приложение должно вызвать функцию DrawMenuBar при изменении меню, вне зависимости от того, находится ли меню в отображаемом окне или нет.
См . также
DrawMenuBar, RemoveMenu .
GetMenuCheckMarkDimensions
Функция является устаревшей. Используйте GetSystemMetrics со значениями CXMENUCHECK и CYMENUCHECK для извлечения размеров битового образа.
Функция GetMenuCheckMarkDimensions возвращает размеры битового образа отметки по умолчанию пункта меню. Windows отображает этот битовый образ в пункте меню. Перед вызовом функции SetMenuItemBitmaps для изменения битового образа отметки для пункта меню, приложение должно определить корректный размер образа, вызвав GetMenuCheckMarkDimensions .
LONG GetMenuCheckMarkDimensions ( VOID )
Параметры
Функция не имеет параметров.
Возвращаемые значения
Возвращаемое значение определяет высоту и ширину битового образа отметки по умолчанию в пикселях. Старшее слово содержит высоту, младше слово содержит ширину.
См. также
SetMenuItemBitmaps .
GetMenuItemCount
Функция GetMenuItemCount определяет количество пунктов в указанном меню.
int GetMenuItemCount (
HMENU hMenu // дескриптор меню
);
Параметры
hMenu ‑ определяет дескриптор меню, для которого будет определяться количество пунктов .
Возвращаемые значения
В случае успеха возвращаемое значение определяет количество пунктов в меню.
В случае неудачи возвращается ‑1. Для получения дополнительной информации об ошибке вызовите функцию GetLastError .
|
|
См . также
GetMenuItemID .
GetMenuItemID
Функция GetMenuItemID извлекает идентификатор пункта меню, находящегося в указанной позиции в меню.
UINT GetMenuItemID (
HMENU hMenu , // дескриптор меню
int nPos // позиция пункта меню
);
Параметры
hMenu ‑ идентифицирует меню, содержащее пункт меню, идентификатор которого извлекается.
nPos ‑ определяет относительную позицию (отсчет начинается с нуля) пункта меню, идентификатор которого извлекается.
Возвращаемые значения
В случае успеха возвращается идентификатор данного пункта меню.
Если идентификатор меню равен NULL, или указанный пункт меню открывает подменю, возвращается 0 xFFFFFFFF .
См. также
GetMenuItemCount, GetMenuString .
GetMailslotInfo
Функция GetMailslotInfo извлекает информацию об указанном мэйлслоте.
BOOL GetMailslotInfo (
HANDLE hMailslot , // дескриптор мэйлслота
LPDWORD lpMaxMessageSize , // адрес максимального размера сообщения
LPDWORD lpNextSize , // адрес размера следующего сообщения
LPDWORD lpMessageCount , // адрес количества сообщений
LPDWORD lpReadTimeout // адрес тайм ‑ аута чтения
);
Параметры
hMailslot ‑ идентифицирует мэйлслот. Этот дескриптор должна создать функция CreateMailslot .
|
|
lpMaxMessageSize ‑ когда функция возвращает управление, указывает на буфер, определяющий максимальный размер письма в байтах, допустимый для этого мэйлслота. Эта величина должна быть больше или равна значению параметра cbMaxMsg функции CreateMailslot , создавшей мэйлслот. Значение параметра может быть равно нулю.
lpNextSize ‑ когда функция возвращает управление, указывает на буфер, определяющий размер следующего письма в байтах. Следующая величина имеет специальное значение:
MAILSLOT_NO_MESSAGE ‑ следующее сообщение отсутствует.
Значение параметра может быть равно нулю.
lpMessageCount ‑ когда функция возвращает управление, указывает на буфер, определяющий количество сообщений, ждущих прочтения. Значение параметра может быть равно нулю.
lReadTimeout ‑ указывает на буфер, определяющий количество времени, в миллисекундах, которое операция чтения может ждать сообщения, записанного в мэйлслот, до наступления тайм‑аута. Параметр заполняется, когда функция возвращает управление. Значение параметра может быть равно нулю.
Возвращаемые значения
В случае успеха возвращается ненулевое значение.
В случае неудачи возвращается нуль. Для получения дополнительной информации об ошибке вызовите функцию GetLastError .
|
|
См. также
CreateMailslot, SetMailslotInfo .
GetMenuState
Функция GetMenuState извлекает флаги меню, ассоциированные с указанным пунктом меню. Если пункт меню открывает подменю, функция также возвращает количество пунктов в подменю.
Функция GetMenuState заменена функцией GetMenuItemInfo . Вы, тем не менее, можете продолжать использовать функцию GetMenuState , если у вас нет необходимости в дополнительных возможностях функции GetMenuItemInfo .
UINT GetMenuState (
HMENU hMenu , // дескриптор меню
UINT uId , // запрашиваемый пункт меню
UINT uFlags // флаги меню
);
Параметры
hMenu ‑ идентифицирует меню, которое содержит пункт, чьи флаги извлекаются.
uId ‑ определяет пункт меню, для которого извлекаются флаги меню.
uFlags ‑ определяет, как интерпретируется значение параметра uId . Параметр uFlags должен принимать одно из следующих значений:
Значение | Пояснение |
MF_BYCOMMAND | Указывает, что uPosition принимает идентификатор пункта меню. Флаг MF_BYCOMMAND является флагом по умолчанию, если явно не задан ни флаг MF_BYCOMMAND, ни MF_BYPOSITION. |
MF_BYPOSITION | Указывает, что uPosition принимает относительную, отсчитываемую с нуля позицию пункта меню. |
|
|
Возвращаемые значения
Если указанного пункта меню не существует, возвращается 0 xFFFFFFFF .
Если пункт меню открывает подменю, младший байт возвращаемого значения содержит флаги меню, связанные с пунктом, а старший байт содержит число пунктов в подменю.
В остальных случаях возвращаемое значение является маской флагов меню. Ниже приведены флаги меню, связанные с пунктом меню:
Значение | Пояснение |
MF_CHECKED | Помещает отметку в пункт меню (только для выпадающих меню, меню быстрого вызова команд и подменю). |
MF_DISABLED | Запрещает пункт меню. |
MF_GRAYED | Запрещает пункт меню и делает его затененным. |
MF_HILITE | Подсвечивает пункт меню. |
MF_MENUBARBREAK | То же, что и флаг MF _ MENUBREAK, за исключением выпадающих меню, меню быстрого вызова команд и подменю, где новый столбец от старого столбца отделяется вертикальной чертой. |
MF_MENUBREAK | Помещает новый пункт в новой строке (для строк меню) или в новый столбец (для выпадающих меню, меню быстрого вызова команд и подменю) без разделения столбцов. |
MF_SEPARATOR | Создает горизонтальную разделяющую линию (для выпадающих меню, меню быстрого вызова команд и подменю). |
См. также
GetMenu, GetMenuItemCount, GetMenuItemID, GetMenuItemInfo, GetMenuString .
SetMenuItemBitmaps
Функция SetMenuItemBitmaps связывает указанный битовый образ с пунктом меню. В зависимости от того, является ли пункт меню отмеченным или нет, Windows отображает соответствующий битовый образ в пункте меню.
BOOL SetMenuItemBitmaps (
HMENU hMenu , // дескриптор меню
UINT uPosition , // пункт меню для получения нового битового образа
UINT uFlags , // флаги пункта меню
HBITMAP hBitmapUnchecked , // дескриптор битового образа
// для неотмеченного состояния
HBITMAP hBitmapChecked // дескриптор битового образа
// для отмеченного состояния
);
Параметры
hMenu ‑ идентифицирует меню, содержащее элемент, который получает новые битовые образы отмеченного и неотмеченного состояний.
uPosition ‑ определяет подлежащий изменению пункт меню в соответствии со значением параметра uFlags .
uFlags ‑ определяет, как интерпретируется значение параметра uPosition . Параметр uFlags должен быть одним из следующих значений:
Значение | Пояснение |
MF _ BYCOMMAND | Указывает, что значение uPosition представляет собой идентификатор пункта меню. Если не задан ни один из флагов, то используется флаг по умолчанию ‑ MF _ BYCOMMAND . |
MF _ BYPOSITION | Указывает, что значение uPosition представляет собой относительную позицию пункта меню (отсчет позиции начинается с нуля). |
hBitmapUnchecked ‑ идентифицирует битовый образ, отображаемый, когда пункт меню не отмечен.
hBitmapChecked ‑ идентифицирует битовый образ, отображаемый, когда пункт меню отмечен.
Возвращаемые значения
В случае успеха возвращается ненулевое значение.
В случае неудачи возвращается нуль. Для получения дополнительной информации об ошибке, вызовите функцию GetLastError .
Комментарии
Если значение параметра hBitmapUnchecked или hBitmapChecked равно NULL, Windows ничего не отображает в соответствующем пункте меню для соответствующего состояния. Если значения обоих параметров равны NULL, то Windows отображает стандартный битовый образ отметки, соответствующей отмеченному состоянию, и убирает битовый образ, когда пункт меню не отмечен.
При разрушении меню эти битовые образы не разрушаются: их должно разрушить приложение.
Windows NT : Функция GetMenuCheckMarkDimensions извлекает размеры отметки по умолчанию, используемой для пунктов меню. Эти значения используются для определения соответствующих размеров битовых образов, используемых функцией SetMenuItemBitmaps .
Windows 95: Функция GetMenuCheckMarkDimensions устарела . Используйте функцию GetsystemMetrics с параметрами CXMENUCHECK и CYMENUCHECK для извлечения размеров битовых образов.
См. также
GetMenu, GetMenuCheckMarkDimensions .
Оконные процедуры
WindowProc
Функция WindowProc является определяемой приложением функцией обратного вызова, которая обрабатывает отправленные окну сообщения.
LRESULT CALLBACK WindowProc (
HWND hwnd , // дескриптор окна
UINT uMsg , // идентификатор сообщения
WPARAM wParam , // первый параметр сообщения
LPARAM lParam // второй параметр сообщения
);
Параметры
hWnd ‑ идентифицирует окно, получающее сообщение.
uMsg ‑ определяет сообщение.
wParam ‑ определяет дополнительную информацию, зависящую от сообщения.
lParam ‑ определяет дополнительную информацию, зависящую от сообщения.
Возвращаемые значения
Возвращаемое значение представляет собой результат обработки сообщения и зависит от сообщения.
Комментарии
WindowProc является "заполнителем" для имени определяемой приложением функции.
См. также
CallWindowProc, DefWindowProc, RegisterClass .
Строки
CharPrev
Функция CharPrev возвращает указатель на предшествующий символ в строке. Функция заменяет функцию AnsiPrev .
LPTSTR CharPrev (
LPCTSTR lpszStart , // указатель на первый символ
LPCTSTR lpszCurrent // указатель на текущий символ
);
Параметры
lpszStart ‑ указатель на начало строки.
lpszCurrent ‑ указатель на текущий символ в завершающейся нулем строке.
Возвращаемые значения
В случае успеха возвращается указатель на предшествующий символ в строке, или на первый символ в строке, если значения параметров lpszCurrent и lpszStart совпадают.
См. также
CharNext, CharPrevExA .
CharToOem
Функция CharToOem преобразует строку в набор символов ОЕМ. Эта функция заменяет функцию AnsiToOem .
BOOL CharToOem (
LPCTSTR lpszSrc , // указатель на преобразуемую строку
LPSTR lpszDst // указатель на буфер для преобразованной строки
);
Параметры
lpszSrc ‑ указывает на завершающуюся нулем преобразуемую строку.
lpszDst ‑ указывает на буфер для преобразованной строки. Если CharToOem используется как ANSI ‑функция, то можно установить параметр lpszDst на тот же адрес, что и параметр lpszSrc . Это не может быть осуществлено в случае использования CharToOem как Unicode ‑функции.
Возвращаемые значения
Всегда возвращается ненулевое значение.
См. также
CharToOemBuff, OemToChar, OemToCharBuff .
CharToOemBuff
Функция CharToOemBuff преобразует указанное количество символов в строке в набор символов ОЕМ. Эта функция заменяет функцию AnsiToOemBuff .
BOOL CharToOemBuff (
LPCTSTR lpszSrc , // указатель на преобразуемую строку
LPSTR lpszDst , // указатель на преобразованную строку
DWORD cchDstLength // длина преобразуемой строки в байтах
);
Параметры
lpszSrc ‑ указывает на завершающуюся нулем преобразуемую строку.
lpszDst ‑ указывает на буфер для преобразованной строки. Если CharToOemBuff используется как ANSI ‑функция, то можно установить параметр lpszDst на тот же адрес, что и параметр lpszSrc . Это не может быть осуществлено в случае использования CharToOemBuff как Unicode ‑функции.
cchDstLength ‑ определяет количество символов для преобразования в строке, идентифицируемой значением параметра lpszSrc .
Возвращаемые значения
Всегда возвращается ненулевое значение.
См. также
CharToOem, OemToChar, OemToCharBuff .
EnumCodePagesProc
Функция EnumCodePagesProc является определяемой приложением функцией обратного вызова. Она вызывается в результате вызова функции EnumSystemCodePages , и получает указатель на строковый буфер, содержащий идентификатор кодовой страницы.
BOOL CALLBACK EnumCodePagesProc (
LPTSTR lpCodePageString // указатель на строку идентификатора
// кодовой страницы
);
Параметры
lpCodePageString ‑ указатель на строковый буфер, содержащий завершающуюся нулем строку идентификатора кодовой страницы.
Дата добавления: 2021-01-21; просмотров: 64; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!