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 Abmessungen von Elementen inkonsistent!? (https://www.delphipraxis.net/163631-abmessungen-von-elementen-inkonsistent.html)

Keks 7. Okt 2011 15:18

Abmessungen von Elementen inkonsistent!?
 
Liste der Anhänge anzeigen (Anzahl: 2)
Mir ist aufgefallen, dass die Abmessungen von Elementen nicht konsistent umgesetzt sind.
Nachfolgend ein Beispiel unter Delphi XE.

TButton und TComboBox sind die Standard-Komponenten mit jeweils der Höhe von 21px (Height:=21).

http://www.delphipraxis.net/attachme...1&d=1317996589
http://www.delphipraxis.net/attachme...1&d=1317996598

Während die Combobox tatsächlich exakt 21px hoch ist, ist der Button nur 19px hoch.
Wie kommt es also, dass beide unterschiedlich hoch sind? Scheinbar wird beim Button ein nicht sichtbarer 1px-Rand miteinberechnet. Dieser wirkt sich sowohl auf die Abmessungen (Höhe/Breite) als auch auf die Positionierung aus (siehe blaue Hilfslinien).

Gibt es einen plausiblen Grund dafür? Oder gar eine Lösung?
So macht es das Gestalten von grafischen Oberflächen nicht gerade einfacher, wenn man exakt gleich große exakt ausgerichtete Elemente haben möchte.

Bernhard Geyer 7. Okt 2011 15:27

AW: Abmessungen von Elementen inkonsistent!?
 
Die entsprechenden Rändern wird über das Theming geregelt. Wenn hier ein Bild mit 1 Pixel (transparenten) Rand definiert ist dann scheint der Button kleiner zu sein obwohl das nicht der Fall ist.

Bis Delphi XE müsstest du dich bei MS beschweren welche ungünstigen Themes sie hier designed haben.
Ab XE2 kannst du das eingebaute Theming von Delphi verwenden - bis XE müsstest du dich mit VCLSkin, ElPack und Co. "begnügen" und dort passende Themes erstellen.

himitsu 7. Okt 2011 15:34

AW: Abmessungen von Elementen inkonsistent!?
 
Oder das Theming abstellen.
Der alte 9x-Style paßte ja noch pixelgenau. :stupid:


PS: Du könntest zwar den Button jeweils um 1 Pixel verschieben, aber dazu raten würde ich dir das besser nicht,
denn wen jemand sich ein eigenes Theme installiert, dann sieht die Sache schnell wieder ganz anders aus.
(das Windows-Theme kann der User ja austauschen)

Keks 7. Okt 2011 21:45

AW: Abmessungen von Elementen inkonsistent!?
 
Irgendwie voll doof... :?
Nun gut, muss man wohl irgendwie damit umgehen.
Auf jeden Fall danke Euch beiden!

himitsu 8. Okt 2011 00:05

AW: Abmessungen von Elementen inkonsistent!?
 
Zum Glück werden die Monitore ja immer hochauflösender ... somit fällt ein Pixel nicht mehr so sher auf, als wie damals, wo die noch Faustgroß waren :lol:

FredlFesl 8. Okt 2011 09:11

AW: Abmessungen von Elementen inkonsistent!?
 
Entweder, man positioniert pixelgenau im Designer. Dann würde ich aber nicht darauf wetten, das bei einem Theme-Wechsel immer alles noch so aussieht, wie erhofft.

Oder man berechnet die Positionen. Dann hat man mehr Arbeit, aber ist auf der sicheren Seite. Der Button ist mittig zum Editfeld zu positionieren.


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