Einzelnen Beitrag anzeigen

Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Label nach Links vergrößern lassen

  Alt 28. Feb 2006, 13:31
in C# muss es doch auch die Möglichkeit geben von der Canvas (wird dort eventuell anders heißen) abzufragen, wie breit Text der dort drauf erscheint ist.
Unter Objectpascal würde es also so aussehen (funktioniert auch wenn das Label nicht am rechten Rand des Forms ist):
Delphi-Quellcode:
procedure SetLabelCaption(ALabel: TLabel; ACaption: String);
var LNewWidth,
    LOldWidth : Integer;
begin
  LOldWidth := ALabel.Canvas.TextWidth(ALabel.Caption);
  LNewWidth := ALabel.Canvas.TextWidth(ACaption);
  ALabel.Caption := ACaption;
  ALabel.Left := ALabel.Left + (LOldWidth - LNewWidth);
end;
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat