Добавление своих пунктов меню в системное меню окна
Прислал Aleksey msalex@tomcat.ru:
{Добавление своих пунктов меню в системное меню окна} {поместите const My_MenuItem=$4000; (*константу можете по своему обозвать и дать ей другой номер, но есть какие-то номера, которые зарезервированы для виндузом для своих пунктов меню - не попадите на них*)
передvar Form1: TForm1;
ОБЯЗАТЕЛЬНО ПОМЕСТИТЕ В СЕКЦИЮ PRIVATE СТРОКУprocedure HookSysCommand(var message : TwmSysCommand);message wm_SysCommand;
}procedure TForm1.HookSysCommand(var message : TwmSysCommand); begin inherited;
case message.CmdType of
My_MenuItem : ShowMessage('Пункт активизирован');
end;
end;procedure TForm1.FormCreate(Sender: TObject); var SysMenu : THandle;
beginSysMenu := GetSystemMenu(Handle, False);
AppendMenu(SysMenu, mf_SEPARATOR, 0, #0);
AppendMenu(SysMenu, mf_BYPOSITION, My_MenuItem, 'Новый пункт');
{appendmenu добавляет новый пункт в конец,
а для вставки своего пункта в другую порядковую позицию воспользуйтесь insertmenu
пример : InsertMenu(SMenu, 1, mf_BYPOSITION, My_MenuItem, 'Новый пункт');}
end;
|