![]() |
Statuslabel ändert die Aufschrift nicht...
Hallo alle zusammen!
Ich schreibe gerade ein Programm zur Darstellung der Koch Kurve und würde jetzt gerne eine Art Statusanzeige einbauen, die anzeigt, ob das Programm gerade rechnet, oder nicht. Dazu wollte ich am Anfang der Prozedur 'Berechne...' und vor dem Ende 'Bereit' in ein Label schreiben. PROBLEM: 'Berechne...' wird nie angezeigt. Es ist die ganze Zeit nur 'Bereit' zu lesen (ist auch beim Programmstart dort eingetragen). Wenn ich das Label beim Programmstart leer lasse und dann auf den Button klicke, erscheint ebenfalls nur 'Bereit' am Ende der Prozedur... Hier mal der betreffende Quelltext:
Delphi-Quellcode:
procedure TForm1.It_SchritteButtonClick(Sender: TObject);
var fehler : boolean; begin StatusLabel.Caption:='Berechne...'; fehler:=false; TRY n:=StrToInt(It_SchritteTEdit.Text); except fehler:=true; end; IF (fehler=false) AND (StrToInt(It_SchritteTEdit.Text)>=0) AND (StrToInt(It_SchritteTEdit.Text)<=10) THEN begin x:=0; y:=Image1.Height-1; laenge:=Image1.Width; winkel:=0; Image1.Canvas.MoveTo(ROUND(x),ROUND(y)); IF KochRadioButton.Checked THEN Koch_Kurve(n,laenge,winkel); IF SquareRadioButton.Checked THEN Square(n,laenge,winkel); end ELSE showmessage ('Fehler! Bitte geben Sie nur ganze Zahlen zwischen 0 und 10 ein!'); StatusLabel.Caption:=('Bereit'); end; |
Re: Statuslabel ändert die Aufschrift nicht...
Damit der Label anzeigt muessen die Messages verarbeitet werden.
Alternativ ein "StatusLabel.Update;" hinter jede Zuweisung des Labeltextes setzen. Update erzwingt ein sofortiges neuzeichnen. |
Re: Statuslabel ändert die Aufschrift nicht...
Hallo werungar,
Zitat:
bye Claus |
Re: Statuslabel ändert die Aufschrift nicht...
Genau das hilft nicht, da ja offensichtlich keine Messages verarbeitet werden.
Invalidate loest aber nur eine WM_PAINT Message aus. |
Re: Statuslabel ändert die Aufschrift nicht...
Hallo Robert Marquardt,
geht aber so nicht aus der Delphi hervor. Wenns so ist, dann gut. bye Claus |
Re: Statuslabel ändert die Aufschrift nicht...
Erstmal vielen Dank für eure Antworten!!
StatusLabel.Update; Das hat geholfen. Statuslabel.Invaliadte; Hat nicht geholfen, aber trotzdem danke. In diesem sinne einen frohen restlichen zweiten Weihnachtstag :) |
Re: Statuslabel ändert die Aufschrift nicht...
Nochmal was dazu:
Ich häng immer ein Application.ProcessMessages dazwischen, weil dann auch buttonKlicks etc abgearbeitet werden.... |
Re: Statuslabel ändert die Aufschrift nicht...
Moin!
Zitat:
Ansonsten hilft auch ein einfaches UpdateWindow(Handle); nach der Zuweisung oder ein Update direkt von der Form, was IMHO das gleiche auslösen sollte. MfG Muetze1 |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:02 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