hallo zusammen,
ja ich weiß, es gibt jede Menge Threads dazu, aber die guten Ratschläge darin sind wohl teilweise überholt.
Delphi-Quellcode:
procedure Hierwird_in_einem_Thread_gearbeitet;
begin
....
postmessage(fhandle,cm_progress,i,inList.count-1);
end;
procedure TForm1.ShowCounter(aValue,maxvalue:integer);
begin
L_Cnt.caption:=format(' %d von %d ',[avalue,maxvalue]);
L_Cnt.Repaint;
end;
procedure TForm1.CMProgressBytes(var msg:TMessage);
begin
ShowCounter(msg.WParam,msg.LParam);
end;
Anstatt einer schön sauberen Darstellung, holpert und stolpert der Zähler, wobei es wohl so ist, das die Darstellung, falls die Anwendung nicht den Focus hat, "Nichts/Ziffern/nichts" ist und wenn Sie den Focus hat, daß es dann "..Ziffern/Ziffern/nichts/Ziffern/Ziffern..." ist.
das Programm wurde mit D7 compiliert, läuft unter W7 und hat ein externes W7 Manifest.
mit doublebuffer ist der Effekt genauso und die Darstellung durch "Trauerränder" verunstaltet.
Ohne Manifest ist die Darstellung wie erwartet, nur eben W95-like.
Habt Ihr eine Ahnung wo man/ich da noch drehen könnte?
Gruß
K-H