AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Label Font soll sich an dem Text ausrichten
Thema durchsuchen
Ansicht
Themen-Optionen

Label Font soll sich an dem Text ausrichten

Ein Thema von eugene222 · begonnen am 24. Mär 2011 · letzter Beitrag vom 25. Mär 2011
Antwort Antwort
Benutzerbild von rollstuhlfahrer
rollstuhlfahrer

Registriert seit: 1. Aug 2007
Ort: Ludwigshafen am Rhein
1.529 Beiträge
 
Delphi 7 Professional
 
#1

AW: Label Font soll sich an dem Text ausrichten

  Alt 24. Mär 2011, 16:22
Das ist fies. Und außerdem a) nicht hilfreich UND b) völlig abweichend vom Thema. Wenn du trollen willst, dann nehm wenigstens den anderen Thread um das nicht eskalieren zu lassen.

Bernhard
Bernhard
Iliacos intra muros peccatur et extra!
  Mit Zitat antworten Zitat
Alt 24. Mär 2011, 16:45     Erstellt von vergessen
Dieser Beitrag wurde von Daniel gelöscht. - Grund: Verbale Entgleisung entfernt
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#3

AW: Label Font soll sich an dem Text ausrichten

  Alt 24. Mär 2011, 17:24
Zunächst einmal sollte Label.Autosize auf false gesetzt werden.
dann wird der auszugebene Text mit Label.Canvas.Textwidth() und Label.Width geprüft und ggf. der Font vergrößert oder Verkleinert.

Gruß
K-H

P.S.
Ich bin Autofahrer, interessiert sich jemand für meinen Führerschein?
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
eugene222

Registriert seit: 24. Mär 2011
11 Beiträge
 
#4

AW: Label Font soll sich an dem Text ausrichten

  Alt 24. Mär 2011, 17:50
@vergessen
Ich hätte nicht gedacht, dass hier so Kiddys unterwegs sind.

@Topic
Ich hab das vorhin alles verworfen, weil es voller Fehler war.
Ich setze mich jetz nochmal dran. Vielleicht wird es diesmal etwas besser klappen.
Wenn ich Fortschritte gemacht habe, werde ich diese hier reinposten.

*edit*
Ja genauso hab ich es ja auch gemacht. Das Problem ist nur, dass man den Font nur in 1 Schritten verkleinern kann. Gib es irgentwelche Möglichkeiten den Font im Kleinen Maß zu verkleinern/vergrößern?

*edit2*
Ich hab das jetz so

einmal das On_Change Event des EditFeldes:
Code:
procedure Tabc.ed_a_Change(Sender: TObject);
 BEGIN
  TRY
   f_a := StrToFloat(ed_a.text);
   s_a := ed_a.text;
  EXCEPT
   ed_a.text := '';
   f_a := 0;
   s_a := 'a';
  END;
  la_formel.caption := s_a+'x²+'+s_b+'x+'+s_c+' = 0';
  formel;
 END;
Und die Formel Prozedur:
Code:
PROCEDURE Tabc.formel;
 BEGIN
  IF la_formel.Canvas.TextWidth(la_formel.caption) > la_formel.Width
  THEN BEGIN
        While la_formel.Canvas.TextWidth(la_formel.caption) > la_formel.Width DO
        BEGIN
         la_formel.Font.Size:= la_formel.Font.size -1;
        END;
       END
  ELSE BEGIN
        While la_formel.Canvas.TextWidth(la_formel.caption) < la_formel.Width DO
        BEGIN
         la_formel.Font.Size:= la_formel.Font.size +1;
        END;
       END;
 END;
Irgentwas ist da falsch. Aber ich weiß nicht was. Ich bin noch Anfäger in solchen Sachen

Geändert von eugene222 (24. Mär 2011 um 18:17 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#5

AW: Label Font soll sich an dem Text ausrichten

  Alt 24. Mär 2011, 20:10
Irgentwas ist da falsch. Aber ich weiß nicht was. Ich bin noch Anfäger in solchen Sachen
Was ist den Falsch?
Wächst die Fontgröße ins unendliche?
Wird überhaupt nichts mehr ausgegeben?

Eine nähere Beschreibung wäre schon nicht schlecht.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
eugene222

Registriert seit: 24. Mär 2011
11 Beiträge
 
#6

AW: Label Font soll sich an dem Text ausrichten

  Alt 25. Mär 2011, 12:58
Wenn ich ins Edit Feld 1 Ziffer eingebe, wird die Zahl normal im Label angezeigt. Nachdem ich jedoch die Zahl erhöhe, also 2 Ziffern da stehen habe, bleibt das Programm in einer Endlosschleife stehen.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.667 Beiträge
 
Delphi 12 Athens
 
#7

AW: Label Font soll sich an dem Text ausrichten

  Alt 25. Mär 2011, 13:01
Hast Du einmal einen Haltepunkt gesetzt und die Werte verfolgt?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#8

AW: Label Font soll sich an dem Text ausrichten

  Alt 25. Mär 2011, 14:40
Das funktioniert:
Delphi-Quellcode:
procedure FontAnpass(var lab:tlabel;const width:integer;const text:string);
begin
  if lab.Canvas.TextWidth(text) > Width THEN BEGIN
    While lab.Canvas.TextWidth(text) > Width DO
      lab.canvas.Font.Size:= lab.canvas.Font.size -1;
  END
  ELSE BEGIN
    While lab.Canvas.TextWidth(text) < Width DO
      lab.canvas.Font.Size:= lab.canvas.Font.size +1;
  END;
  lab.Font.Size:=lab.Canvas.Font.Size;
end;{------------------------------------------------------------------}
Es ist allerdings noch finetuning von Nöten.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.667 Beiträge
 
Delphi 12 Athens
 
#9

AW: Label Font soll sich an dem Text ausrichten

  Alt 25. Mär 2011, 14:50
Wieso ist das Label als Var-Parameter deklariert?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  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 08:30 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