Главная
Решение задач.
Справочные данные.
Формулы.
Программирование.
Как в Windows?
Разное.
Утилиты Windows.
Несправности принтеров.
BIOS по алфавиту.
Тесты.
Карта сайта.
|
Работа с меню на winAPI в delphi.
Создает меню.
function CreateMenu: HMenu;
Возвращаемое значение:
В случае успешного завершения - идентификатор меню; 0 - в противном случае.
Создает пустое всплывающее меню.
function CreatePopupMenu: HMenu;
Возвращаемое значение:
В случае успешного завершения - идентификатор меню; 0 - в противном случае.
Присоединяет в конец меню новый элемент, состояние которого определяется Flags.
function AppendMenu(Menu: HMenu; Flags, IDNewItem: PChar): Bool;
Параметры:
Menu: Изменяемое меню.
Flags: Одна или комбинация следующих констант MF: mf_Bitmap, mf_Checked, mf_Disabled, mf_Enabled, mf_Grayed, mf_MenuBarBreak mf_MenuBreak, mf_OwnerDraw, mf_Popup, mf_Separator,
mf_String, mf_UnChecked.
IDNewItem: Идентификатор команды или описатель меню в случае всплывающего меню.
Возвращаемое значение:
Не нуль в случае успешного завершения; нуль - в противном случае.
Метит или снимает метку с элементов меню во всплывающем меню.
function CheckMenuItem(Menu: HMenu; IDCheckItem, Check: Word); Bool;
Параметры:
Menu: Всплывающее меню.
IDCheckItem: Помечаемый элемент меню.
Сheck: Определяет, как должен быть помечен элемент и как определяется его положение. Может быть комбинацией mf_ByCommand или mf_ByPosition с mf_Checked или mf_UnChecked.
Возвращаемое значение:
Предыдущее состояние элемента; -1, если элемент меню не существует.
Удаляет элемент из Menu. Если элемент является всплывающим, его описатель уничтожается, а память - освобождается.
function DeleteMenu(Menu: HMenu Position, Flags: Word): Bool;
Параметры:
Menu: Идентификатор меню.
Position: Положение или идентификатор команды.
Flags: Одна из констант меню: mf_ByPosition, mf_ByCommand.
Возвращаемое значение:
В случае успешного завершения - не нуль; в противном случае - 0.
Уничтожает Menu и освобождает связанную с ним память.
function DestroyMenu(Menu: HMenu): Bool;
Параметры:
Menu: Идентификатор меню.
Возвращаемое значение:
В случае успешного завершения - не нуль; 0 - в противном случае.
Разрешает, блокирует или затеняет элемент меню в соответствии со значением параметра Enable.
function EnableMenuItem(Menu: HMenu; IDEnableItem, Enable: Word): Bool;
Параметры:
Menu: Идентификатор меню.
IDEnableItem: Идентификатор или позиция элемента меню или помечаемый всплывающий элемент.
Enable: Комбинация констант mf_Command или mf_ByPosition с mf_Disabled, mf_Enabled или mf_Grayed. См. раздел "Флаги меню, mf_" в главе 1.
Возвращаемое значение:
Предыдущее состояние элемента меню; -1, если элемент не существует.
Определяет описатель меню окна.
function GetMenu(Wnd: HWnd): HMenu;
Параметры:
Wnd: Окно, владеющее меню.
Возвращаемое значение:
Идентификатор меню; 0 - если меню отсутствует; не определено, если Wnd является дочерним окном.
Определяет число меню и элементов меню верхнего уровня в указанном меню.
function GetMenuItemCount(Menu: HMenu): Word;
Параметры:
Menu: Идентификатор меню.
Возвращаемое значение:
В случае успешного завершения возвращается число элементов меню; 0 - в противном случае.
Определяет числовой идентификатор элемента меню, расположенного в указанной позиции меню.
function GetMenuItemID(Menu: HMenu; Pos: Integer): Word;
Параметры:
Menu: Идентификатор всплывающего меню.
Pos: Позиция элемента в меню, отсчитываемая с нуля.
Возвращаемое значение:
В случае успешного завершения возвращается идентификатор элемента; 0 - если элемент является всплывающим и -1 - если ошибка.
Считывает информацию состояния для указанного элемента меню.
function GetMenuState(Menu: HMenu; ID, Flags: Word): Word;
Параметры:
Menu: Идентификатор меню или всплывающего меню.
ID: Идентификатор элемента меню.
Flags: Одна из констант меню mf_ByPosition, mf_ByCommand.
Возвращаемое значение:
Маски флагов из следующих значений: mf_Checked, mf_Disabled, mf_Enabled, mf_MenuBarBreak mf_MenuBreak, mf_Separator, mf_UnChecked; в случае всплытия старший байт содержит число
элементов; -1 в случае неверного идентификатора.
Копирует метку элемента меню в Str. Копируемая метка заканчивается пустым символом.
function GetMenuString(Menu: HMenu; IDItem: Word; Str: PChar; MaxCount: Integer; Flag: Word): Integer;
Параметры:
Menu: Идентификатор меню.
IDItem: Идентификатор элемента меню.
Str: Принимающий буфер.
MaxCount: Размер буфера.
Flag: Одна из констант меню mf_ByPosition, mf_ByCommand.
Возвращаемое значение:
Фактическое число скопированных байт.
Считывает описатель всплывающего меню.
function GetSubMenu(Menu: HMenu; Pos: Integer): HMenu;
Параметры:
Menu: Идентификатор меню.
Pos: Положение всплывающего меню в Menu.
Возвращаемое значение:
Идентификатор всплывающего меню; 0 - если в Pos нет всплывающего меню.
Считывает системное меню окна для копирования и модификации.
function GetSystemMenu(Wnd: HWnd; Revert: Bool): HMenu;
Параметры:
Wnd: Идентификатор окна.
Revert: Нуль, чтобы возвращался описатель для копирования системного меню, и не нуль, чтобы возвращался описатель исходного системного меню.
Возвращаемое значение:
Идентификатор системного меню; 0 - если Revert отлична от нуля и системное меню не модифицировано.
Подсвечивает или снимает подсвечивание с элемента меню верхнего уровня.
function HiliteMenuItem(Wnd: HWnd; Menu: HMenu; IDHilite, Hilite: Word): Bool;
Параметры:
Wnd: Идентификатор окна.
Menu: Идентификатор меню верхнего уровня.
Brush: HBrush, используемая для затенения.
IDHilite: Целочисленный идентификатор или положение элемента меню.
Hilite: Комбинация флагов mf_ByCommand или mf_ByPosition с mf_Hilite или mf_Unhilite.
Возвращаемое значение:
Не нуль в случае успешного завершения; 0 - в противном случае.
Вставляет новый элемент меню, состояние которого определяет значением Flags.
function InsertMenu(Menu: HMenu; Position, Flags, IDNewItem: Word; NewItem: PChar): Bool;
Параметры:
Menu: Идентификатор меню.
Position: Идентификатор команды или положение элемента меню, после которого вставляется новый элемент меню, или -1 для присоединения в конец.
Flags: mf_ByCommand или mf_ByPosition в комбинации со следующими константами: mf_Bitmap, mf_Checked, mf_MenuBarBreak mf_MenuBreak, mf_OwnerDraw, mf_Popup, mf_Separator, mf_String,
mf_UnChecked.
IDNewItem: Идентификатор команды нового элемента меню или описатель меню в случае всплывающего меню.
NewItem: Содержимое нового элемента меню.
Возвращаемое значение:
Не нуль в случае успешного завершения; нуль - в противном случае.
Загружает поименованный ресурс меню.
function LoadMenu(Instance: THandle; MenuName: PChar): HMenu;
Параметры:
Instance: Экземпляр модуля, исполнимый файл которого содержит меню.
MenuName: Строка (заканчивающаяся пустым символом) или имя целочисленного идентификатора меню.
Возвращаемое значение:
В случае успешного завершения - идентификатор меню; 0 - в противном случае.
Загружает меню, определенное параметром MenuTemplate.
function LoadMenuIndirect(var MenuTemplate): HMenu;
Параметры:
MenuTemplate: Массив структур TMenuTemplate.
Возвращаемое значение:
В случае успешного завершения - идентификатор меню; 0 - в противном случае.
Изменяет существующий элемент меню, чье новое состояние определяется параметром Flags.
function ModifyMenu(Menu: HMenu; Position, Flags, IDNewItem: Word, NewItem: PChar): Bool;
Параметры:
Menu: Идентификатор меню.
Position: Идентификатор команды или положение элемента меню.
Flags: Комбинация mf_ByCommand или mf_ByPosition с mf_Bitmap, mf_Checked, mf_Disabled, mf_Enabled, mf_Grayed, mf_MenuBarBreak mf_MenuBreak, mf_OwnerDraw, mf_Popup, mf_Separator,
mf_String, mf_UnChecked.
IDNewItem: Идентификатор команды или описатель меню модифицируемого элемента меню (если Flags установлен в mf_Popup).
NewItem: Строка (mf_String), HBitmap (mf_Bitmap) или данные из прикладной задачи (mf_OwnerDraw).
Возвращаемое значение:
Не нуль в случае успешного завершения; нуль - в противном случае.
Не разрушая, удаляет элемент меню или соответствующее всплытие из указанного меню. Всплытие может быть использовано в последующих операциях.
function RemoveMenu(Menu: HMenu; Position, Flags: Word): Bool;
Параметры:
Menu: Идентификатор меню.
Position: Идентификатор команды или положение элемента меню.
Flags: mf_ByCommand или mf_ByPosition, определяющий природу аргумента Position.
Возвращаемое значение:
Не нуль в случае успешного завершения; 0 - в противном случае.
Устанавливает и перерисовывает меню окна как меню, определенное параметром Menu. Предыдущее меню не отображается.
function SetMenu(Wnd: HWnd; Menu: HMenu): HMenu;
Параметры:
Wnd: Идентификатор окна.
Menu: Новое меню или 0 для удаления текущего меню.
Возвращаемое значение:
Не нуль в случае успешного завершения; 0 - в противном случае.
Отображает плавающее всплывающее меню и отслеживает выбор элементов. Плавающие всплывающие меню могут отображаться в любом месте экрана.
function TrackPopupMenu(Menu: HMenu; Flags: Word; x, y, cx: Integer; Wnd: HWnd; var Rect: TRect): Bool;
Параметры:
Menu: Идентификатор всплывающего меню.
Flags: Установлен в 0, не используется.
x, y: Положение верхнего левого угла меню (в координатах экрана).
cx: Ширина меню (в единицах экрана) или нуль по умолчанию.
Wnd: Окно, владеющее всплывающим меню, для приема сообщений wm_Command.
Rect: TRect, определяющая область мыши, где меню остается видимым, если пользователь отпускает кнопку мыши.
Возвращаемое значение:
Не нуль в случае успешного завершения; 0 - в противном случае.
Вновь рисует строку меню окна. Используется, если строка меню изменялась после создания окна.
function DrawMenuBar(Wnd: HWnd);
Параметры:
Wnd: Идентификатор окна.
К оглавлению
|
|
|