![]() |
Label soll immer die höhe eines EditFeldes anzeigen
wie der Titel schon sagt will ich ein Label das immer die höhe eines EditFeldes anzeigt.
Wie geht das? |
Re: Label soll immer die höhe eines EditFeldes anzeigen
Zitat:
Delphi-Quellcode:
Sonst würde mir nur noch die Möglichkeit über ein Timer mit o.g. Befehl im OnTimer-Event einfallen...
Label1.Caption := IntToStr(Edit1.Height);
SCRaT |
Re: Label soll immer die höhe eines EditFeldes anzeigen
also das Label soll sich immer wider akualisieren
|
Re: Label soll immer die höhe eines EditFeldes anzeigen
alle 10 sekunden? dann nimm nen timer mit interval 10000 und schreib obigen code rein
|
Re: Label soll immer die höhe eines EditFeldes anzeigen
Zitat:
Wenn Du das Label z.B. alle 5 Sekunden aktualisieren möchtest, dann füge Deiner Form ein Timer hinzu und benutze obigen Code, um das Label zu aktualisieren. Den Timer setzt Du auf 5000 (5*1000msec) und startest ihn (enabled := true). Das müsste Dich doch zur Lösung bringen, oder? |
Re: Label soll immer die höhe eines EditFeldes anzeigen
Ich würde einfach bei Änderung der Größe des Edits die Beschriftung ändern.
|
Re: Label soll immer die höhe eines EditFeldes anzeigen
also du hast irgendwo sowas
Delphi-Quellcode:
dann ersetz es durch
Edit1.Height := 45;
Delphi-Quellcode:
:stupid:
Edit1.Height := 45;
Label1.Caption := IntToStr(Edit1.Height) |
Re: Label soll immer die höhe eines EditFeldes anzeigen
Das sag ich doch schon die ganze Zeit :gruebel:
|
Re: Label soll immer die höhe eines EditFeldes anzeigen
und wie stellt man den timer ein sodass er immer wieder abläuft
|
Re: Label soll immer die höhe eines EditFeldes anzeigen
Du hast immer noch nicht kapiert, was man dir sagen will: Kein Timer sondern direkt bei der Änderung der Größe des Edits.
|
Re: Label soll immer die höhe eines EditFeldes anzeigen
Zitat:
2. Enabled := True setzen --> OnTimer-Event wird alle 3.5 Sekunden aufgerufen, bis Enabled := False gesetzt wird. SCRaT |
Re: Label soll immer die höhe eines EditFeldes anzeigen
Zitat:
|
Re: Label soll immer die höhe eines EditFeldes anzeigen
Zitat:
|
Re: Label soll immer die höhe eines EditFeldes anzeigen
Zitat:
SCRaT |
Re: Label soll immer die höhe eines EditFeldes anzeigen
Du hast doch bestimmt ne Klingel an deiner Haustür, an der dann Gäste klingeln. Oder hast du einen Angestellten (Thread) der regelmässig vor die Tür geht um zu sehen, ob einer davorsteht?
|
Re: Label soll immer die höhe eines EditFeldes anzeigen
^^
|
Re: Label soll immer die höhe eines EditFeldes anzeigen
Hallo,
ich hätte da noch eine Lösung ohne Timer:
Delphi-Quellcode:
Der Vorteil dieser Lösung besteht darin, daß sie auch auf (versteckte) Änderungen des Fonts im Edit reagiert. Ein manuelles Nachführen des Labels ist in solchen Fällen oft schwierig.
type
TEdit = class (StdCtrls.TEdit) private FOnSizeChange : TNotifyEvent; public procedure SetBounds (ALeft, ATop, AWidth, AHeight: Integer); override; property OnSizeChange: TNotifyEvent read FOnSizeChange write FOnSizeChange; end; TForm1 = class (TForm) {...} Button1 : TButton; Edit1 : TEdit; Label1 : TLabel; procedure Button1Click (Sender: TObject); procedure FormCreate (Sender: TObject); private procedure SizeChanged (Sender: TObject); end; procedure TEdit.SetBounds (ALeft, ATop, AWidth, AHeight: Integer); begin inherited; if Assigned(FOnSizeChange) then FOnSizeChange (Self); end; procedure TForm1.Button1Click (Sender: TObject); begin with Edit1.Font do Size := Size + 1; end; procedure TForm1.FormCreate (Sender: TObject); begin Edit1.OnSizeChange := SizeChanged; end; procedure TForm1.SizeChanged (Sender: TObject); begin with (Sender as TEdit) do Label1.Caption := Format('Height: %d', [Height]); end; Gruß Hawkeye |
Re: Label soll immer die höhe eines EditFeldes anzeigen
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:58 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 by Thomas Breitkreuz