Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   FMX: Fenster in Vordergrund holen (https://www.delphipraxis.net/169224-fmx-fenster-vordergrund-holen.html)

greenmile 5. Jul 2012 16:01

FMX: Fenster in Vordergrund holen
 
Hallo,

folgende Situation: Die Mainform erzeugt ein neues Fenster mit .Show; (statt .ShowModal) und versteckt sich selbst mit .Hide;. In der zweiten Form wird, wenn dieses geschlossen wird, die erste mit .Show; wieder angezeigt. Fenster 1 ist dann auch wieder da, aber im Hintergrund, ich muss erst alle anderen Fenster minimieren. Wie bekomme ich das erste wieder nach vorne? SetForeGroundWindow gibt es ja im echten FMX nicht ...

greenmile 7. Jul 2012 11:43

AW: FMX: Fenster in Vordergrund holen
 
Gebe mir mal selbst die Antwort:

Try
If not Self.TopMost then begin
OldVal := Self.TopMost;
Self.TopMost := true;
Self.TopMost := not OldVal;
end;
Except
End;

Im Hintergrund wird das Fenster mit Recreate neu erstellt. Ich habe noch keine Erfahrung ob das beliebig oft geht, aber es funktioniert als Workaround.

himitsu 7. Jul 2012 13:01

AW: FMX: Fenster in Vordergrund holen
 
Wenn es gibt guntktioniert, wozu ist dann dieser leere Try-Except-Block?


Wozu hat Emba Self.BringToFront implementiert?


PS: SetForeGroundWindow ist nur eine WinAPI und FMX ist nicht nur für Windows.

Tipp: [delphi]-Tags?


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:03 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz