Советы по Delphi

         

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


Прислал 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; 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]



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