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/)
-   -   VCL Skalierungsproblem (https://www.delphipraxis.net/208599-vcl-skalierungsproblem.html)

TurboMagic 24. Aug 2021 15:10

VCL Skalierungsproblem
 
Hallo,

gegeben: D10.4.2 und eine VCL Form.
Auf dieser sind ein Panel welches top aligned ist und dieses enthält ein TEdit
und ein TButton rechts neben dem Edit.

Das Edit ist oben links und rechts verankert, der Button ist oben rechts verankert.
Zieht man das Fenster breiter passt alles. Das Edit wird breiter und der Button
bleibt rechts neben dem Edit ohne zu überlappen.

Rufe ich jedoch im Constructor der Form ScaleBy(125, 100) auf, wird das TEdit
viel zu breit und der Button über das Edit platziert.

Vorher:
Form.Width: 813
Edit.Left: 192
Edit.Width: 554
Button.Left: 752

Nach ScaleBy:
Form.Width: 1012
Edit.Left: 240
Edit.Width: 892
Button.Left: 940

Warum wird hier der Button so viel zu viel verbreitert?
554 * 1,25 sind ja 692 und nicht 892...

Bernhard Geyer 24. Aug 2021 15:32

AW: VCL Skalierungsproblem
 
Wieso rufst du ScaleBy selbst auf?
Das macht so alles die VCL selbst im Ablauf?

Uwe Raabe 24. Aug 2021 15:53

AW: VCL Skalierungsproblem
 
Zitat:

Zitat von TurboMagic (Beitrag 1493863)
Warum wird hier der Button so viel zu viel verbreitert?

Du meinst das TEdit und nicht den Button, oder? Die Breite wird einmal durch das ScaleBy skaliert und dann noch wegen des rechten Anchors an die veränderte Breite des Forms angepasst. Eventuell hilft ein Kapseln in Disable-/EnableAlign.

TurboMagic 25. Aug 2021 10:26

AW: VCL Skalierungsproblem
 
Hallo,

1. Ja, ich meine das TEdit. Sorry!

2. Es gibt in meiner Anwendung eine Option einen extra vergrößerten GUI Modus zu aktivieren,
für bessere Touch Bedienung. Wenn der aktiv ist, wird das ScaleBy aufgerufen, sonst nicht.

=> ich muss die Breite in dem Fall wohl selber justieren. Das probiere ich mal aus.

Grüße
TurboMagic

Uwe Raabe 25. Aug 2021 10:39

AW: VCL Skalierungsproblem
 
Interessanterweise kann ich den beschriebenen Effekt hier mit einer simplen VCL-Anwendung unter 10.4.2 nicht reproduzieren.

TurboMagic 25. Aug 2021 10:43

AW: VCL Skalierungsproblem
 
Ich habe die Breite des Edit im falle des ScaleBy nach dem ScaleBy Aufruf manuell geändert.
Das funktioniert jetzt, habe aber noch ein anderes Problem gefunden. => neuer Thread


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:34 Uhr.

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