AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Schriftgröße eines Labels abhängig von Länge?
Thema durchsuchen
Ansicht
Themen-Optionen

Schriftgröße eines Labels abhängig von Länge?

Ein Thema von Larsi · begonnen am 25. Aug 2009 · letzter Beitrag vom 25. Aug 2009
Antwort Antwort
Larsi

Registriert seit: 10. Feb 2007
2.262 Beiträge
 
Delphi 2007 Professional
 
#1

Schriftgröße eines Labels abhängig von Länge?

  Alt 25. Aug 2009, 09:18
Hi,

ich habe für mein StreamZ eine Vollbildfunktion geplant welche den aktuellen Titel ganz groß anzeigen soll, damit man auch aus Entfernung den Titel sehen kann. Aber wie mache ich das, dass der Titel so groß ist wie bei der Länge des Titelnamens und der Auflösung des Monitors möglich ist, damit man alles sieht? Also der Titel soll nur auf einer Zeile sein. Weiß einer wie das geht?

MFG Lars Wiltfang
Ein Tag ohne Delphi ist ein verlorener Tag!

Homepage zu meinem neuen Programm: StreamZ
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#2

Re: Schriftgröße eines Labels abhängig von Länge?

  Alt 25. Aug 2009, 09:20
Benutze Canvas.TextWidth und fahre die Font-Size solange herunter bis die Länge kleiner als die Bildschirmbreite ist, wobei Du bei einer Font-Größe schluss machen solltest
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
Larsi

Registriert seit: 10. Feb 2007
2.262 Beiträge
 
Delphi 2007 Professional
 
#3

Re: Schriftgröße eines Labels abhängig von Länge?

  Alt 25. Aug 2009, 09:22
Muss ich den Text dann auch über Canvas schreiben? Ich hab das jetzt nämlich mit einem Label gemacht.
Ein Tag ohne Delphi ist ein verlorener Tag!

Homepage zu meinem neuen Programm: StreamZ
  Mit Zitat antworten Zitat
Benutzerbild von Ralf Kaiser
Ralf Kaiser

Registriert seit: 21. Mär 2005
Ort: Wuppertal
932 Beiträge
 
Delphi 10.3 Rio
 
#4

Re: Schriftgröße eines Labels abhängig von Länge?

  Alt 25. Aug 2009, 09:24
Nein. Aber das Label benutzt den Canvas um sich selbst zu zeichnen. Daher kannst du den selben Canvas benutzen um zu messen welche Schriftgrösse du benutzen musst.
Ralf Kaiser
  Mit Zitat antworten Zitat
Larsi

Registriert seit: 10. Feb 2007
2.262 Beiträge
 
Delphi 2007 Professional
 
#5

Re: Schriftgröße eines Labels abhängig von Länge?

  Alt 25. Aug 2009, 09:30
label2.font.size := label2.Canvas.TextWidth(label2.caption); So gehts schonmal nicht. Es wird viel zu groß gezeichnet man sieht nur 2 Buchstaben auf dem Formular. Wie muss das richtig heißen?
Ein Tag ohne Delphi ist ein verlorener Tag!

Homepage zu meinem neuen Programm: StreamZ
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#6

Re: Schriftgröße eines Labels abhängig von Länge?

  Alt 25. Aug 2009, 09:32
Du brauchst ne For-Schleife, die font.size so lange verkleinert, bis die gewünschte Größe erreicht ist.
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#7

Re: Schriftgröße eines Labels abhängig von Länge?

  Alt 25. Aug 2009, 09:32
Pseudo-Code -- aber eigentlich ist das genau das, was ich oben schon mit Worten erklärt habe -- wie Du auf Deinen Ansatz kommst, ist mir tatsächlich ein Rätsel:
Delphi-Quellcode:
MaxBreite := ...; // Von Dir zu ermitteln bzw. zu belegen
while (Label1.Canvas.TextWidth(DeinText) > MaxBreite) and (Label1.Font.Size > 2) do
  Label1.Font.Size := Label1.Font.Size - 1;
Viele Grüße
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:09 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