Einzelnen Beitrag anzeigen

johny

Registriert seit: 12. Aug 2003
Ort: Koblenz
32 Beiträge
 
#1

Edit-Felder bei jedem Schleifendurchlauf aktualisieren

  Alt 15. Sep 2003, 13:30
Hallo,

vielleicht kann mir hier jemand weiterhelfen. Ich habe ein Problem mit Schleifen mal zu folgendem Beispiel vereinfacht:

Auf einer Form sind
- ein Button
- zwei Edit-Felder
- ein GaugeBar

Klickt man auf den Button, werden die Schleifen ausgeführt und in den Edit-Felder sollen die Variablen iCount1 und iCount2 angezeigt werden.
Desweiteren wird der Wert der while-Schleife noch durch ein GaugeBar angezeigt.

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
 iCount1 : integer; // Counter für die for-Schleife
 iCount2 : integer; // Counter für die while-Schleife
begin
 iCount2 := 0;
 for iCount1 := 0 to 10 do
 begin
 Edit2.Text := IntToStr(iCount1); // Zahl der for-Schleife in Edit2 anzeigen
  while iCount2 < 5 do
  begin
   Edit1.Text := IntToStr(iCount2); // Zahl der while-Schleife in Edit1 anzeigen
   Gauge1.Progress := iCount2; // Gleichzeitig durch Gauge visualisieren
   iCount2 := iCount2+1; // Counter erhöhen
   sleep(250); // Warten, so dass man auch was sieht ;)
  end;
 end;
end;
Der GaugeBar wird bei jedem Schleifendurchlauf aktualisiert, so dass der Balken richtig angezeigt wird, sich also ständig erhöht. Die Einträge der Edit -Felder werden aber erst dann angezeigt, wenn alle Schleifen fertig durchlaufen sind, so dass zum Zeitpunkt des Durchlaufs nichts angezeigt wird, dann erscheint die letzte Zahl.

Ist es möglich, die aktuellen Werte der Edit-Felder sofort anzuzeigen, so dass in diesen hochgezählt wird?
  Mit Zitat antworten Zitat