Если Вы хотите перехватить события кнопок свертывания, разворачивания, восстановления и закрытия окна, то нужно обработать событие WM_SYSCOMMAND. В данном примере мы озвучиваем эти действия:
private
{ Private declarations }
procedure WMSysCommand(
var Msg: TWMSysCommand); message WM_SYSCOMMAND;
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.WMSysCommand(var Msg: TWMSysCommand);
begin
if (Msg.CmdType = SC_MINIMIZE) or
(Msg.CmdType = SC_MAXIMIZE) or
(Msg.CmdType = SC_RESTORE) or
(Msg.CmdType = SC_CLOSE) then
MessageBeep(0) ;
DefaultHandler(Msg) ;
end;
Комментарии