Frage

I found 2 ways for catching onMinimize event.

First: On FormResize event:

if MyForm.WindowState = wsMinimized then ......

Second: Declaring the message handler like this:

procedure WMSize(var Msg: TMessage); message WM_SIZE;

And then:

procedure TForm57.WMSize(var Msg: TMessage);
begin
  if Msg.WParam  = SIZE_MINIMIZED then ....
end;

Which way is better?!

War es hilfreich?

Lösung

OnResize is fired in response to the same message (WM_SIZE). Unless you need to react before the VCL handles the message (update scrollbars, align controls etc.), you don't need to attach a message handler. Otherwise, be sure to handle it before the inherited call (which is missing in your sample).

Andere Tipps

second is better. as WindowState is not necessarily wsMinimized.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top