...
const
SC_MyMenuItem1 = WM_USER + 1;
...
procedure TForm1.btnAddClick(Sender: TObject);
const
sMyMenuCaption1='My n&ew system menu item';
var
SysMenu : HMenu;
begin
{Get system menu}
SysMenu := GetSystemMenu(Handle, FALSE);
{Add a seperator bar to main form-form1}
AppendMenu(SysMenu, MF_SEPARATOR, 0, '');
{add our menu}
AppendMenu(SysMenu, MF_STRING,
SC_MyMenuItem1, sMyMenuCaption1);
end;
...
private
procedure WMSysCommand(var Msg: TWMSysCommand);
message WM_SYSCOMMAND;
...
procedure TForm1.WMSysCommand(var Msg:TWMSysCommand);
begin
if Msg.CmdType = SC_MyMenuItem1 then begin
{some code to handle my menu item:}
ShowMessage('My system menu 1 clicked!');
end else
inherited;
end;
procedure TForm1.btnDeleteClick(Sender: TObject);
const
MnuCommand = SC_MOVE;
var
SysMenu : HMenu;
begin
SysMenu := GetSystemMenu(Handle, FALSE);