Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
|
Re: Flakern trotz DoubleBuffer?
22. Jun 2006, 18:03
Hi,
es gibt mindest. zwei Dinge.
Das erste ist, DoubleBuffered muss für das direkte Elterncontrol gesetzt werden, liegt also dein ProgressBar auf einem Control (z.B. einem Panel), muss für dieses getrennt das DoubleBuffered gesetzt werden.
Ansonsten kann es sein, dass du dein ProgressBar an sich viel zu häufig neu zeichnest. Eine Zuweisung des Fortschritts führt hier immer zum Neuzeichnen. Es ist einfacher, wenn du ein wenig die ALU mit dem Dreisatz bemühst und 'nur' Werte zwischen 0 und 100 zuweist. Wenn du hier ausrechnest, wieviel Prozent du vom gesamten Fortschritt hast und nur den Wert zuweist, wenn sich auch was geändert hat, dann wird deutlich seltener neu gezeichnet und es bleibt eine Menge mehr Rechenzeit für den Rest.
Gruß Der Unwissende
|