Переопределите в подклассе TForm оконную процедуру WinProc класса. В примере оконная процедура переопределяется для того чтобы реагировать на сообщение WM_CANCELMODE, показывающее, что выполняется messagebox или какой-либо еще диалог.
type
TForm1 = class(TForm)
Button1: TButton;
procedure WndProc (varmessage: TMessage); override;
procedure Button1Click(Sender: TObject);
private{Private declarations}public{Public declarations}end;
var
Form1: TForm1;
implementation{$R *.DFM}procedure TForm1.WndProc (varmessage: TMessage);
beginifmessage.Msg = WM_CANCELMODE then
Form1.Caption := 'A dialog or message box has popped up'
elseinherited// Oстальное сделает родительская процедураend;
procedure TForm1.Button1Click(Sender: TObject);
begin
ShowMessage('Test Message');
end;
Переопределение оконной процедуры WinProc класса в подклассе TForm для реализации реакции на сообщение WM_CANCELMODE при показе messagebox или другого диалога.
Комментарии и вопросы
Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS