Hallo,
ich habe ein Programm geschrieben, dass sich äußerst seltsam verhält. Ich sehe keinen Fehler im Code, dennoch treten folgende Fehler auf:
- Das Label "Action" hat niemals die Caption 'sende Datei', obwohl der Tranfer lange genug dauert.
- ProgressBar1 wird im Verlauf der Aktion irgendwann voll und beginnt dann wieder von vorn. Es scheint, als würde genau einmal zuviel "stepit" ausgeführt.
Delphi-Quellcode:
try
...
ProgressBar1.Min := 0;
ProgressBar1.Max := FileList.Items.Count-1;
ProgressBar1.Position:=0;
ProgressBar1.Step := 1;
for i:=0 to (FileList.Items.Count-1) do begin
Aktion.Caption:='sende Datei..';
sleep(1);
IdFTP1.Put(.. ,..);
Aktion.Caption:='gesendet.';
sleep(1);
ProgressBar1.StepIt;
end;
finally
...
end;
die sleeps hatte ich mal reingebaut, weil ich dachte, dass eine kleine Pause zum anzeigen helfen würde.
Weiß hier jemand eine Erklärung für dieses Phänomen?
Übrigens: ProgressBar1 und das Aktions-Label befinden sich jeweils in einer GroupBox. Bei der vom Aktions-Label ist bei manchen Programmaufrufen die Umrandung während der Aktionen nicht oder nicht vollständig zu sehen. Vielleicht ist das auch noch ein Indiz, das zur Lösung führen könnte.
mfg
changlee
(Da hätte mir der Nikolaus doch wirklich mal eine funktionierende Action.Caption in den Stiefel packen können..
)