Delphi-PRAXiS
Seite 2 von 3     12 3      

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/)
-   -   Delphi TLabel + taRightJustify = katastrophe? (https://www.delphipraxis.net/102157-tlabel-tarightjustify-%3D-katastrophe.html)

DeddyH 24. Okt 2007 11:52

Re: TLabel + taRightJustify = katastrophe?
 
Das ist ein intelligentes Feature der IDE und kann zur Laufzeit ja nicht verfügbar sein.

xZise 24. Okt 2007 11:56

Re: TLabel + taRightJustify = katastrophe?
 
Zitat:

Zitat von DeddyH
Das ist ein intelligentes Feature der IDE und kann zur Laufzeit ja nicht verfügbar sein.

Nein ;) Gucks dir an ^^

[edit]Hier mein ganzer Code (bis auf die Deklaration von l und den Standardkram von Delphi):
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  l.Caption := l.Caption + 'A';
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  l := tLabel.Create(self);
  l.Left := 300;
//  l.Width := 300;
//  l.AutoSize := false;
  l.Alignment := taRightJustify;
  l.Parent := Self;
  l.Top := 3;
  l.Caption := 'Hallo Welt';

  Showmessage(IntToStr(l.Left));
end;

mkinzler 24. Okt 2007 12:03

Re: TLabel + taRightJustify = katastrophe?
 
Bei Ausrichtung rechts wird bei AutoSize auf der linken vergrößert/verkleinert

DeddyH 24. Okt 2007 12:05

Re: TLabel + taRightJustify = katastrophe?
 
Irgendwas passt da aber nicht. Zumindest bei mir steht das Label zu weit rechts. Kontrolle mit einer Line bei 300.
Delphi-Quellcode:
var l: TLabel;

procedure TForm1.Button1Click(Sender: TObject);
begin
  l.Caption := l.Caption + 'A';
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  l := tLabel.Create(self);
  l.Alignment := taRightJustify;
  l.Left := 300;
  l.Parent := Self;
  l.Top := 3;
  l.Caption := 'Hallo Welt';
end;

procedure TForm1.FormPaint(Sender: TObject);
begin
  Canvas.Pen.Color := clRed;
  Canvas.MoveTo(300,0);
  Canvas.LineTo(300,Height);
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
  l.Free;
end;

xZise 24. Okt 2007 12:05

Re: TLabel + taRightJustify = katastrophe?
 
Zitat:

Zitat von mkinzler
Bei Ausrichtung rechts wird bei AutoSize auf der linken vergrößert/verkleinert

BINGO ^^
So will ichs ja: Problem ist nur, dass er es im Create nicht so richtig will xD

[edit]
WANTED
------
REDBOX
------

^^

Also DeddyH:
Gucks dir beim Panel an. Panel1.Left ist 300.
Und l.Left ist 317 (so im Dreh), also höher, weil l.Left + l.Width viel zu hoch ist, und eigentlich 300 ergeben sollte.[/edit]

mkinzler 24. Okt 2007 12:07

Re: TLabel + taRightJustify = katastrophe?
 
Dann mach es besser in .Loaded()

xZise 24. Okt 2007 12:13

Re: TLabel + taRightJustify = katastrophe?
 
Zitat:

Zitat von mkinzler
Dann mach es besser in .Loaded()

Was meinst du damit?

mkinzler 24. Okt 2007 12:23

Re: TLabel + taRightJustify = katastrophe?
 
Weil man im onCreate keine Eigenschaften von Objekten setzen sollte, welche auch in der Dfm stehen, da diese dann mit denen überschrieben werden. Diese setzt man in der .Loaded-Methode, welche nach dem Laden der persistenten Eigenschaften aufgerufen wird.

Hawkeye219 24. Okt 2007 12:34

Re: TLabel + taRightJustify = katastrophe?
 
Hallo Markus,

erinnerst du dich an diesen Thread?

Gruß Hawkeye

mkinzler 24. Okt 2007 12:36

Re: TLabel + taRightJustify = katastrophe?
 
manches setzt sich halt irgendwie im Gedächnis fest. :oops:


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:41 Uhr.
Seite 2 von 3     12 3      

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