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/)
-   -   Caption von Button zentrieren (https://www.delphipraxis.net/185447-caption-von-button-zentrieren.html)

idefix2 11. Jun 2015 17:17

Caption von Button zentrieren
 
Wenn ein TButton eine mehrzeilige Caption hat, wird die immer linksbündig ausgegeben. Lässt sich das auf einfache Art ändern, sodass alle Textzeilen zentriert angezeigt werden?

ringli 11. Jun 2015 17:48

AW: Caption von Button zentrieren
 
Wie setzt du die Caption denn (Code)? Zumindest bei XE4 in einer VCL-Anwendung wird bei mir die Caption automatisch zentriert.

hathor 11. Jun 2015 18:08

AW: Caption von Button zentrieren
 
Nimm TBitBtn. Aber bei TButton geht es auch - ich habe XE7.
Wordwrap auf true.

idefix2 11. Jun 2015 18:44

AW: Caption von Button zentrieren
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich setze die Caption schon im Object Inspector.
Wenn WordWrap=false ist, zentriert er, aber bei WordWrap=true gibt er mehrzeilige Texte linksbündig aus.

Im Screenshot sieht man es schon: Alle Buttons haben die gleichen Eigenschaften, sobald der Text zweizeilig wird, zentriert er nicht mehr.

idefix2 11. Jun 2015 18:58

AW: Caption von Button zentrieren
 
@Hathor:
:thumb:

TBitBtn zentriert auch mehrzeilige Captions.

Luckie 11. Jun 2015 19:05

AW: Caption von Button zentrieren
 
Ist eben Windows Standard. Damit hat dein Kunde, wenn es denn ein Kundenwunsch ist, schon Jahrzehnte gelebt. :?

DeddyH 11. Jun 2015 19:16

AW: Caption von Button zentrieren
 
Also, ich hab das mit Delphi 7 und Delphi XE7 probiert: einen TButton, WordWrap auf true und einen mehrzeiligen Text zugewiesen. Der war immer zentriert. Hast Du vielleicht einen Class Helper oder sonstwie etwas "Ungewöhnliches" eingebunden, was dazwischenfunken könnte?

idefix2 11. Jun 2015 20:13

AW: Caption von Button zentrieren
 
Nichts dergleichen. Es sind ganz gewöhnliche Delphi Tbuttons. Sie zeigen, wie man im Bild sehen kann, den Text zentriert an, solange er in eine Zeile passt, sobald es zweizeilig wird, erscheint der Text linksbündig. Schon im OI beobachtbar, wenn ich dort die Caption eingebe.
Mit TBitBtn funktioniert es jedenfalls wie es soll, da bleibt der Text auch zentriert, wenn es mehrzeilig wird.

BadenPower 11. Jun 2015 20:36

AW: Caption von Button zentrieren
 
Ich kann nur DeddyH's Aussage bestätigen.

TButton auf die Form gelegt, QordWrap auf true gesetzt, Caption auf "xxxxxx yyyyy" geändert und der Text erscheint zweizeilig mit beiden Zeilen zentriert.

idefix2 11. Jun 2015 20:39

AW: Caption von Button zentrieren
 
Dann habt ihr offensichtlich bessere TButtons als ich :-D

Dalai 11. Jun 2015 21:06

AW: Caption von Button zentrieren
 
Zitat:

Zitat von BadenPower (Beitrag 1304887)
Ich kann nur DeddyH's Aussage bestätigen.

Ich nicht. Das XE2 bei mir macht die Beschriftung ebenfalls linksbündig mit aktiviertem WordWrap, sowohl im Design-Mode als auch zur Laufzeit. Kommt vielleicht auf das benutzte Windows an? Win8+ stellt ja den Text in der Titelleiste zentriert dar, in früheren Windowsen war der immer linksbündig - vielleicht gab's da bei Buttons auch eine Änderung?

MfG Dalai

Bernhard Geyer 11. Jun 2015 21:10

AW: Caption von Button zentrieren
 
mit oder ohne Theming der Anwendung?

DeddyH 11. Jun 2015 21:11

AW: Caption von Button zentrieren
 
Das wäre ein Anhaltspunkt, ich hab das unter Win8.1 versucht, und da Tbutton ja im Prinzip nur ein Wrapper auf das Windows-Control ist...

[edit] Mit Delphi 7 ohne Theming ;) [/edit]

Dalai 11. Jun 2015 22:17

AW: Caption von Button zentrieren
 
Zitat:

Zitat von Bernhard Geyer (Beitrag 1304893)
mit oder ohne Theming der Anwendung?

Die Richtung war bingo. Wenn Themes im System aktiviert sind (und die Anwendung ein passendes Manifest hat), wird der Text zentriert. Im Windows Classic ist das nicht der Fall, dort ist der Text linksbündig. Die Ausrichtung ändert sich sogar zur Laufzeit, wenn man Themes umschaltet.

MfG Dalai


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