Советы по Delphi

       

Добавление своих пунктов меню в системное меню окна


Прислал Aleksey :

{Добавление своих пунктов меню в системное меню окна}
{поместите
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 ofMy_MenuItem : ShowMessage('Пункт активизирован');end;end;

procedure TForm1.FormCreate(Sender: TObject);
var
SysMenu : THandle;begin
SysMenu := 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;
[000118]



Содержание раздела