Добавить пункт в системное меню, написать обработчик его выбора
и перехватить сообщение о выборе пункта из системного меню.
Примечание:
Константа WM_USER используется в приложении для определения собственных
сообщений.
Значения от 0 до (WM_USER-1) зарезервированы для системных
сообщений.
type
TForm1 = class(TForm)
procedure FormCreate(Sender: TObject);
procedure OnMyMenu;
private
procedure WMSysCommand(var Msg: TWMSysCommand); message WM_SYSCOMMAND;
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
const
SC_MyMenuItem = WM_USER + 1;
//----------------------------------------------------
procedure TForm1.FormCreate(Sender: TObject);
begin
// добавление своего пункта в системное меню приложения
AppendMenu(GetSystemMenu(Handle, FALSE), MF_SEPARATOR, 0, '');
AppendMenu(GetSystemMenu(Handle, FALSE), MF_STRING,
SC_MyMenuItem, 'Новый пункт в меню');
end;
//----------------------------------------------------
procedure TForm1.OnMyMenu;
Begin
// Обработка нажатия на новый пункт меню
End;
//----------------------------------------------------
procedure TForm1.WMSysCommand(var Msg: TWMSysCommand);
begin
// перехват события выбора нового пункта меню
if Msg.CmdType = SC_MyMenuItem then
OnMyMenu else
inherited;
end;
//----------------------------------------------------
Источник:
Дельфи. Вокруг да
около.
|
Copyright ©
"Мастера DELPHI" E-mail:
delphi@mastak.com
http://www.delphimaster.ru |
Источник получения информации: http://www.delphimaster.ru
|