<pre>
Ich versuche seit geraumer Zeit eine Möglichkeit zu finden. Den Zeitpunkt mit zu kriegen,
wenn man ein Minimiertes Fenster wiederherstellt. Also, habe ich versucht mittels der
Message WM_Syscommand dies abzufangen. Aber irgendwie will das nicht klappen.
Meiner Meinung nach sollte das doch mit folgenden Konstrukt laufen.
<br>
<br>
Type
TForm1 = class(TForm)
private
PROCEDURE WMSysCommand(var Message: TWMSysCommand); message WM_SYSCOMMAND;
end;
<br>
. . .
<br>
procedure TForm1.WMSysCommand(var Message: TWMSysCommand);
begin
<b> INHERITED; // Ist dieser Eintrag überhaupt notwendig ?</b>
aCaption:='';
IF (Message.CmdType AND $FFF0 = SC_MAXIMIZE) THEN
aCaption := '1 SC_MAXIMIZE'
ELSE IF (Message.CmdType AND $FFF0 = SC_MINIMIZE) THEN
aCaption := '2 SC_MINIMIZE'
ELSE IF (Message.CmdType AND $FFF0 = SC_RESTORE) THEN
<b>aCaption := '3 SC_RESTORE' // <-- Hier sollte es passieren, ODER???</b>
ELSE IF (Message.CmdType AND $FFF0 = SC_CLOSE) THEN
aCaption := '4 SC_CLOSE'
ELSE
aCaption := IntToStr(Message.CmdType AND $FFF0);
<b> ShowMessage(aCaption);</b>
end;
<br>
Ich habe hier nur ein ShowMessage gesetzt um das ganze besser zu beobachten,
später soll dort ein Prozeß ablaufen der ein weiteres Fenster manipuliert.
<br>
Also das Ziel ist immer eindeutig mitzubekommen,
wann sich der WindowState des (eines) Fensters ändert, und zwar zu welchen State genau.
<br>
Hast jemand dazu eine Idee?
<br>
Stefan
</pre>
Ich versuche seit geraumer Zeit eine Möglichkeit zu finden. Den Zeitpunkt mit zu kriegen,
wenn man ein Minimiertes Fenster wiederherstellt. Also, habe ich versucht mittels der
Message WM_Syscommand dies abzufangen. Aber irgendwie will das nicht klappen.
Meiner Meinung nach sollte das doch mit folgenden Konstrukt laufen.
<br>
<br>
Type
TForm1 = class(TForm)
private
PROCEDURE WMSysCommand(var Message: TWMSysCommand); message WM_SYSCOMMAND;
end;
<br>
. . .
<br>
procedure TForm1.WMSysCommand(var Message: TWMSysCommand);
begin
<b> INHERITED; // Ist dieser Eintrag überhaupt notwendig ?</b>
aCaption:='';
IF (Message.CmdType AND $FFF0 = SC_MAXIMIZE) THEN
aCaption := '1 SC_MAXIMIZE'
ELSE IF (Message.CmdType AND $FFF0 = SC_MINIMIZE) THEN
aCaption := '2 SC_MINIMIZE'
ELSE IF (Message.CmdType AND $FFF0 = SC_RESTORE) THEN
<b>aCaption := '3 SC_RESTORE' // <-- Hier sollte es passieren, ODER???</b>
ELSE IF (Message.CmdType AND $FFF0 = SC_CLOSE) THEN
aCaption := '4 SC_CLOSE'
ELSE
aCaption := IntToStr(Message.CmdType AND $FFF0);
<b> ShowMessage(aCaption);</b>
end;
<br>
Ich habe hier nur ein ShowMessage gesetzt um das ganze besser zu beobachten,
später soll dort ein Prozeß ablaufen der ein weiteres Fenster manipuliert.
<br>
Also das Ziel ist immer eindeutig mitzubekommen,
wann sich der WindowState des (eines) Fensters ändert, und zwar zu welchen State genau.
<br>
Hast jemand dazu eine Idee?
<br>
Stefan
</pre>
Comment