Delphi-PRAXiS

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 Kleines VCL-Problem (https://www.delphipraxis.net/137722-kleines-vcl-problem.html)

Wolfgang Mix 27. Jul 2009 15:55


Kleines VCL-Problem
 
Nach Klick auf Button1 wird 'Mix#' in Edit1 nicht angezeigt,
nach ca. 5 sec. wohl aber der geänderte Text.
Was mache ich falsch?

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var s:string;
begin
  s:='Mix#';
  Edit1.Text:=s; //Klappt nicht
  delete(s,1,3);
  sleep(5000);
  Edit1.Text:=s;
end;

end.

DeddyH 27. Jul 2009 15:57

Re: Kleines VCL-Problem
 
Setz mal ein Application.ProcessMessages vor das sleep.

Wolfgang Mix 27. Jul 2009 16:01

Re: Kleines VCL-Problem
 
Danke, klappt.
Aber was passiert da wirklich im Hintergrund?

DeddyH 27. Jul 2009 16:04

Re: Kleines VCL-Problem
 
Bis einschließlich des sleep ist das Programm zu beschäftigt, um das Edit neu zu zeichnen. Durch das Application.ProcessMessages lässt Du es aber zunächst die Botschaftswarteschlange abarbeiten, deshalb klappt das.

Der.Kaktus 27. Jul 2009 16:07

Re: Kleines VCL-Problem
 
Hallo,

so klappts ;-)

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
  var s:string;
begin
  s:='Mix#';
  Edit1.Text:=s;
  Edit1.Update;//hier nach klappts !
end;

Wolfgang Mix 27. Jul 2009 16:12

Re: Kleines VCL-Problem
 
Danke, das nene ich Service.
BTW, deine alte Fußnote finde ich cooler.;-)

Danke auch an Der.Kaktus
Gruß

Wolfgang

DeddyH 27. Jul 2009 16:15

Re: Kleines VCL-Problem
 
[OT]
Zitat:

Zitat von Wolfgang Mix
BTW, deine alte Fußnote finde ich cooler.;-)

Naja, ab und zu sollte man mal wechseln, sonst wird das langweilig :zwinker: [/OT]


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:50 Uhr.

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