Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by itblumi,
22. Nov 2022
Ich muss das Ganze nochmal korrigieren und Delphi macht hier wirklich alles richtig. Delphi löst nach der Windows Message WM_ACTIVATEAPP eine eigene Message CM_ACTIVATE aus und diese haben mich durcheinander gebracht.
WM_ACTIVATEAPP sendet wirklich den wparam als true und lparam ist die threadid und danach wird intern die Message CM_ACTIVATE gesendet, da ist dann der wparam false.
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by itblumi,
22. Nov 2022
Es scheint ein Delphi Bug zu sein denn Delphi wertet den Parameter einfach nicht aus und die Application wird auch wieder Active, was in diesem Fall einfach nicht der Fall ist.
Die Form macht das richtig und prüft den Parameter.
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by itblumi,
21. Nov 2022
Man kann dies auch ohne eine extra Variable umsetzen und ist dann auch etwas kürzer.
procedure TForm7.ApplicationEvents1Activate(Sender: TObject);
begin
if (not Windows.IsIconic(Application.Handle)) then
Memo1.Lines.add('Activate: '+TimeToStr(Time));
end;
procedure TForm7.ApplicationEvents1Deactivate(Sender: TObject);
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
by itblumi,
21. Nov 2022
Hallo v2afrank,
ich kann dir leider nicht beantworten warum dies geschieht, aber ich kann dir einen workaround anbieten. Den Fehler konnte ich auch mit meinem XE6 nach stellen, aber ich denke das diese Events von Windows selbst ausgeführt werden und das Delphi das nicht kontrolliert. Ich kann mich da aber auch irren.
Da du aber weist das bei einem OnMinimize auch ein OnRestore folgen muss...