Hi!
Ich mach jetzt hier schon ne Weile an meinem Programm rum, bei dem folgendes wohl nicht ganz funtzt:
Ich merke mir über Application.OnActivate und OnDeactivate, ob die Anwendung den Fokus hat oder nicht (boolean Variable, iss ja logisch

)
Blöderweise funktioniert dies irgendwie nicht, obwohl der entscheidende Codeteil sowas von richtig ist...
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| procedure TMainForm.ApplicationEvents1Activate(Sender: TObject); begin AppActivated := true; MainForm.OnAppRestore(Sender); end;
procedure TMainForm.ApplicationEvents1Deactivate(Sender: TObject); begin Main.AppActivated := false; end; |
Es ist einfach so, dass die Variable AppActivated irgendwie bei einer Abfrage trotz fehlendem Anwendungsfokus immer true ist. Die Variable wurde auch schon öfters gesetzt, kann also nicht sein, dass sie einen undefinierten Startwert trägt.
Jetzt halt die Frage, ob ihr noch ne andere Lösung kennt, z.B., ob man mit der Windows API abfragen kann, ob die Anwendung den Fokus hat.
Danke!
Gruß alias5000