AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Vista: Verzögerte TProgressBar?

Ein Thema von Rakshasa · begonnen am 6. Mär 2007 · letzter Beitrag vom 28. Aug 2016
Antwort Antwort
olaf43

Registriert seit: 2. Dez 2010
9 Beiträge
 
#1

AW: Vista: Verzögerte TProgressBar?

  Alt 27. Aug 2016, 10:17
Unter Windows 10 tritt das Problem genauso auf. Ich benutze deshalb den Progressbar nicht mehr, sondern ein tShape Objekt in Rectangle-Form und passender Brush-Farbe, dessen width ich dem anzuzeigenden Fortschritt anpasse.
Wichard
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.869 Beiträge
 
Delphi 12 Athens
 
#2

AW: Vista: Verzögerte TProgressBar?

  Alt 27. Aug 2016, 13:21
Viel sinnvoller ist einfach den Maximalwert aus fest gesetzter Position und gewünschter Position zu berechnen. Ich setze z.B. Position auf 100 und will 1%, dann setze ich Maximum auf 10000. Dann will ich 20%, setze also Maximum auf 500.

Diese Änderung passiert ohne die Verzögerung.

Allerdings ist das Feature durchaus hilfreich, wenn man selbst keine Glättung des Verlaufs durchführt...
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Vista: Verzögerte TProgressBar?

  Alt 28. Aug 2016, 01:32
Vorwärts wird nunmal seit einer Weile eine "fließende" Bewegung generiert.
Rückwärts geht es meist sofort.

Also im Prinzip braucht man Position nur höher stellen und dann wieder zurück gehen.

Delphi-Quellcode:
xxx.Position := x + 1;
xxx.Position := x;
oder
Delphi-Quellcode:
xxx.Position := xxx.Max;
xxx.Position := x;
oder
man ändert eben den Maximalwert, welches auch ein sofortiges Neuzeichnen an der gewollten Stelle auslöst.


Achtung: In Delphi hat man tatsächlich inzwischen ein paar Vista-Erweiterungen in den VCL-Controls nachgerüstet. (so tot ist die VCL also doch nicht)
Man muß dort also Delphi-Referenz durchsuchenTProgressBar.SmoothReverse auf False stehen lassen, sonst geht der Rückwätstrick nicht mehr.
https://msdn.microsoft.com/en-us/lib.../bb760820.aspx


Bei Google suchenwindows progressbar disable animation
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (28. Aug 2016 um 01:40 Uhr)
  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 01:59 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz