Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.177 Beiträge
 
Delphi 12 Athens
 
#6

AW: Dialogfenster maximal wie hoch?

  Alt 14. Mär 2020, 07:32
Falls es zu wenig für das Fenster war, habe ich es einfach kleiner skaliert.
In der VCL besser genau andersrum, also Fenster so klein wie der kleinstmögliche Bildschirm und wenn möglich vergrößern, denn das Align und ganz besonders die Anchors rauchen dir sonst ab.

Aber es gibt auch einen Bugfix: ein Panel als alClient dahinter, dort alles drauf und im OnCreate/OnShow das Width+Height des Panels "manuell" an ClientWidth/ClientHeight anpassen.

Grund: Windows begrenzt beim Erstellen automatisch die Fenstergröße und mehr als Desktop (alle Bildschirme) ist nicht möglich.
Delphi (vor allem die alten Delphis) prüft aber die erstellte Größe nicht und platziert alles so darauf, wie es denkt das Fenster sei groß, und an diesen Positionen wird dann auch die weitere Ausrichtung berechnet, also außerhalb des Fensters.

Das Selbe passiert auch gern mal, wenn der Desktop skaliert wurde. (Fenster vergrößer geht, dann ist halt der Randbereich rechts/unten leer, aber beim verkleinern so wie oben das Abgeschnitten)


Was neuere Delphis seit vielen Jahren zum Glück machen, ist beim Fenster nicht mehr Width/Height des designeten Fensters zu speichern, sondern ClientWidth/ClientHeight,
denn z.B. bei Delphi 7 wurde dann auch was abgeschnitten, als Windows die Titelleiste und Ränder vergrößert hatte.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat