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/)
-   -   Delphi Nach DPI Skalieren (https://www.delphipraxis.net/167251-nach-dpi-skalieren.html)

BLin4ik 20. Mär 2012 10:04

Nach DPI Skalieren
 
Hallo,

und zwar drehe ich hier schon langsam durch.
Ich suche nach einer Lösung wie das Form nach DPI Skaliert wird.(96 -> 120)

Was ich alles schon versucht habe:
AutoScroll := false
Scheint sehr effektiv zu sein, aber ich habe bereits ein ganzes Programm und es
wäre umständlich auf jedem Form das AutoScroll auf False zu setzen.
Er soll automatisch das AutoScroll beim Create auf False sezten.

Versuchte Lösung -> TForm.Create zu überschreiben
Wenn ich AutoScroll vor dem inherited auf False setze, zeigt es keine Wirkung, steht danach trotzdem auf True.
Tu ich das danach, ist es zu spät und es wurde nichts anegpasst.
Bin auch tiefer reingegangen, habe mögliche Sachen bei TScrollingWinControl versucht,
bin aber gescheitert.

Kann mir da einer weiterhelfen?
Ich bin am verzweifeln...

Bernhard Geyer 20. Mär 2012 10:10

AW: Nach DPI Skalieren
 
Wo ist genau dein Problem? War genau passt nicht (Screenshot)?

Unsere Delphi-Apps haben (durch geschickten Einsatz von Panels) keine Problem mit hohen DPI-Zahlen.

BLin4ik 20. Mär 2012 10:19

AW: Nach DPI Skalieren
 
Liste der Anhänge anzeigen (Anzahl: 3)
Also

das erste Bild sind 96 DPI und so wie es auch aussehen soll,
das zweite ist 120 DPI mit AutoScroll := true und das dritte mit AutoScroll := false

und es soll auch so dargestellt werden, sowie wenn AutoScroll auf false gesetzt wird

Bernhard Geyer 20. Mär 2012 10:41

AW: Nach DPI Skalieren
 
Leg ein panel mit align = botton rein, dann noch ein panel mit aling = right und dort legst du den Button rein.
Dann klappt es auch mit größenveränderlichen Formularen.

BLin4ik 20. Mär 2012 10:50

AW: Nach DPI Skalieren
 
Zitat:

Zitat von Bernhard Geyer (Beitrag 1157493)
Leg ein panel mit align = botton rein, dann noch ein panel mit aling = right und dort legst du den Button rein.
Dann klappt es auch mit größenveränderlichen Formularen.

Hatte vorher ein Panel mit align = alClient, gibt es einen bestimmten Grund, warum er damit ein Problem hat?
So scheint eine Anpassung zu funktionieren.

Aber bei dem fertigen Programm, sind eine Menge an Panels und sie haben auch ihren Zweck,
wie gehe ich den da vor? Anstatt bei allen Panels das Align zu ändern?
Am besten wäre es natürlich eine extra Unit anzubinden die das Automatisch verarbeitet,
deswegen hatte ich auch vor das AutoScroll auf False zu setzen auf jedem Form.


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:16 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