Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi CheckBox: Länge des Textes (https://www.delphipraxis.net/22226-checkbox-laenge-des-textes.html)

Helmi 14. Mai 2004 14:01


CheckBox: Länge des Textes
 
Hallo,

ich hoffe der Titel ist für jeden zufriedenstellend. :-D

Aber erstmal zu meinem Problem:

Weiss jemand, wie man die Länge des Textes einer CheckBox ermitteln kann?

Kurze Erklärung:
In einer Komponente wird der Text des CheckBox-Textes verändert.
Die CheckBox liegt auf einer Form und soll immer mittig angezeigt werden.
Dazu brauche ich aber die Länge der gesamten CheckBox, inkl. des neuen
Textes.

Weiss jemand wie das geht?

mfg
Helmi

kiar 14. Mai 2004 14:14

Re: CheckBox: Länge des Textes
 
so
Delphi-Quellcode:
var
   s:string;
begin
     s:='  checkbox1  ';
     checkbox1.Caption:=s;
     sleep (1000);
     Showmessage(inttostr(length(checkbox1.caption)));
end;

Steve 14. Mai 2004 14:17

Re: CheckBox: Länge des Textes
 
Delphi-Quellcode:
Pixels := Form.Canvas.TextWidth(CheckBox.Caption);
oder so ähnlich ;)

kiar 14. Mai 2004 14:24

Re: CheckBox: Länge des Textes
 
natürlich war das blödsinn was ich oben geschrieben habe. erst richtig lesen und dann schreiben.

ausgehend davon das eine checkbox quadratisch ist:
Delphi-Quellcode:
I:=checkBox1.height + length(CheckBox1.caption)* font.size;
edit : kut tastatur :mrgreen:

Muetze1 14. Mai 2004 16:22

Re: CheckBox: Länge des Textes
 
Liste der Anhänge anzeigen (Anzahl: 1)
Moin!

Da der Font nicht immer proportional ist, folgendes Beispiel dazu im Anhang.

MfG
Muetze1

Helmi 14. Mai 2004 18:33

Re: CheckBox: Länge des Textes
 
Vielen Dank für die ganzen Hilfen!! :-D

Hat wunderbar funktioniert!


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