Einzelnen Beitrag anzeigen

Benutzerbild von Codehunter
Codehunter

Registriert seit: 3. Jun 2003
Ort: Thüringen
2.272 Beiträge
 
Delphi 10.4 Sydney
 
#1

Fensterposition persistent machen

  Alt 30. Mär 2018, 19:12
Hallo!

Ich habe grad sowas wie ein Anfängerproblem bzw. steh wohl auf dem Schlauch ^^

Ich möchte die Größe, Position und WindowState eines Forms in einer Ini speichern und beim Programmstart wiederherstellen. Das Speichern klappt wunderbar, nur beim Wiederherstellen gibts Probleme. Zwar kann ich die gespeicherten Werte korrekt auslesen. Das mache ich im OnCreate des MainForm. BoundsRect und WindowState lassen sich hier problemlos setzen, aber nicht Left und Top. Die werden ignoriert und im Anschluss durch die Werte überschrieben, die in der DFM hinterlegt sind bzw. falls Position = poScreenCenter eingestellt ist, dann wird das Fenster zentriert.

Eigentlich müsste ja schon das Zuweisen vom BoundsRect die Position verändern, aber auch da wird Left und Top ignoriert und wieder überschrieben. Selbst wenn ich das Zuweisen von Left und Top später mache, z.B. in einem OnShow/WM_AFTERSHOW-Konstrukt, ändert sich an dem Problem nichts. Wie lässt sich das lösen?

Grüße
Cody
Ich mache grundsätzlich keine Screenshots. Schießen auf Bildschirme gibt nämlich hässliche Pixelfehler und schadet der Gesundheit vom Kollegen gegenüber. I und E zu vertauschen hätte den selben negativen Effekt, würde aber eher dem Betriebsklima schaden
  Mit Zitat antworten Zitat