AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Progressbar aktualisiert zu langsam
Thema durchsuchen
Ansicht
Themen-Optionen

Progressbar aktualisiert zu langsam

Ein Thema von WizoHulk · begonnen am 13. Jan 2011 · letzter Beitrag vom 13. Jan 2011
Antwort Antwort
WizoHulk

Registriert seit: 25. Jun 2010
198 Beiträge
 
Delphi 5 Enterprise
 
#1

Progressbar aktualisiert zu langsam

  Alt 13. Jan 2011, 17:55
hallo,

ich habe eine Progressbar die mir den aktuellen status anzeigt wie weit er mit dem Kopiren von Verzeichnissen ist.
Wenn er damit fertig ist wird der timer der Die Form wieder ins nichts verschwindem lässt gestartet.
Das problem ist dabei, das die progressbar noch gar nicht voll ist und er trotzdem den Timer startet.

Die Form und die Progressbar sind beide jeweils auf Doublebuffered gesetzt
hier mal nen Codeschnipsel...

Delphi-Quellcode:
procedure TFormMyBackUpStarter.timUpToDownTimer(Sender: TObject);
var
  LFormBewegung : Boolean;
begin
  if pbGesamtStatus.Position = pbGesamtStatus.max then
  begin
    //Application.ProcessMessages;
    LFormBewegung := TMyFormAdvance.FormBewegungUpToDown(self);
    if LFormBewegung = True then
    begin
      timFormBewegung.Enabled := false;
      Application.Terminate;
    end;
  end;

end;
  Mit Zitat antworten Zitat
Benutzerbild von rollstuhlfahrer
rollstuhlfahrer

Registriert seit: 1. Aug 2007
Ort: Ludwigshafen am Rhein
1.529 Beiträge
 
Delphi 7 Professional
 
#2

AW: Progressbar aktualisiert zu langsam

  Alt 13. Jan 2011, 18:57
if LFormBewegung = True then Böse. Da reicht ein if LFormBewegung then .

Wie schnell tickt denn dein Timer? - Und wann wird jetzt der Timer gestartet? - Mit Beginn der Anwendung oder wirklich erst nach Beendigung des Vorgangs? - Mir scheint als ob der Timer viel zu schnell tickt oder einfach die Anwendung fertig ist und vor dem finalen Zeichnen schon der Timer merkt, dass die Anwendung fertig ist und somit das Zeichnen nicht mehr statt findet.

Für Versuchszwecke kannst du auch das DoubleBuffered rausnehmen.

Bernhard
Bernhard
Iliacos intra muros peccatur et extra!
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#3

AW: Progressbar aktualisiert zu langsam

  Alt 13. Jan 2011, 19:04
Windows 7/Vista ist dafür verantwortlich, daß die ProgressBar nicht ruckartik nach oben schnellt, sondern dieses fließend gescheiht.

PS: Das wurde schon mehrmals gefragt und falls es unbedingt nötig ist, dann wurde da auch oftmals eine Lösung aufgezeigt.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
WizoHulk

Registriert seit: 25. Jun 2010
198 Beiträge
 
Delphi 5 Enterprise
 
#4

AW: Progressbar aktualisiert zu langsam

  Alt 13. Jan 2011, 19:50
habe den thread gefunden...
kann aber mit den Workaround nicht so ganz umgehen..
weiß net ganz genau wie das gemeint ist

zuerst neue Position per Position := NewPosition + 1
dann sofort die tatsächliche neue Position
position := NewPosition
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#5

AW: Progressbar aktualisiert zu langsam

  Alt 13. Jan 2011, 21:34
- Vorwärts hochsetzen (Position + x) geht langsam
- Rückwärts (Position - x) geht schnell

Also erst was Größeres setzen und dann zurück auf den gewünschen Wert.
(um 1 größer fällt dabei am Wenigsten auf)
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:05 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