![]() |
Form Position macht Probleme
Ich habe ein Hauptformular, welches mit ShowModal ein Eingabefester anzeigt. Wenn das geschlossen ist, wird wieder das Hauptfenster angezeigt. Das geht soweit. Wenn ich dann aber das Hauptfenster verschiebe und danach das Eingabefenster wieder mit ShowModal anzeige, wird es nicht in der Mitte des Hauptfensters angezeigt, sondern in der Mitte, wo das Hauptfenster vorher war.
Ich habe bei
Delphi-Quellcode:
schon die Werte poMainFormCenter und poOwnerFormCenter probiert. Aber es klappt nicht, dass das Eingabefenster in der Mitte des Hauptfensters erscheint.
Position
Geht das nicht oder mache ich etwas falsch? |
AW: Form Position macht Probleme
Diese Position wird nur einmal beim Erstellen des Fensters errechnet. Wenn du dieses nicht jedesmal neu erstellst, sondern es nur unsichtbar wird, wird die Position nicht neu berechnet, wenn du es erneut anzeigst.
|
AW: Form Position macht Probleme
Danke für die Info.
Das heißt, dass ich mir beim erneuten Anzeigen die Position wieder manuell errechnen muss? |
AW: Form Position macht Probleme
Man könnte natürlich die Instanz des Dialogs immer dann neu erstellen, bevor er angezeigt wird. :stupid:
(und danach wieder freigeben) Zitat:
TCustomForm.CreateParams (oft noch vor OnCreate, aber manchmal auch mittendrinn), TCustomForm.SetWindowToMonitor und TCustomForm.CMShowingChanged Alternativ: Vor dem Show/ShowModal mit DestroyWindowHandle rumzupfuschen, ... das will doch niemand :freak: |
AW: Form Position macht Probleme
Hallo,
wie schon geschrieben: Erzeuge das Eingabefe stet jedes Mal dynamisch und gib es immer wieder frei. |
AW: Form Position macht Probleme
Danke für euren Tipp.
Ich erstelle nun das Eingabeformular dynamisch und alles ist schön. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:14 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 by Thomas Breitkreuz