Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   ProgressBar mit Timer synchron (https://www.delphipraxis.net/72248-progressbar-mit-timer-synchron.html)

mkinzler 27. Jun 2006 17:18

Re: ProgressBar mit Timer synchron
 
Wie lang soll es den brauchen, bis der Balken voll ist?

bonanza 27. Jun 2006 17:22

Re: ProgressBar mit Timer synchron
 
ja genau, wenn der balken voll ist, soll der Timer abgelaufen sein.

mkinzler 27. Jun 2006 17:32

Re: ProgressBar mit Timer synchron
 
Das kannst du erreichen, wenn du das maximum auf 1 setzt. Dann macht aber ei Fortschrittsbalken wenig Sinn ;-). Oder du Verringerst das Intervall auf eine Zehntel und setzt Max auf 10;

Flare 27. Jun 2006 17:36

Re: ProgressBar mit Timer synchron
 
Eigentlich müsste er einen zweiten Timer einbauen, der in einem kleineren Intervall die Fortschrittanzeige antreibt, wobei der dann mit dem 1. Timer nicht wirklich synchron wäre (irgendwo schon). Liegt daran, dass man die aktuelle Position von einem Timer nicht abfragen kann.


Flare

jfheins 27. Jun 2006 17:43

Re: ProgressBar mit Timer synchron
 
Wie wärs mit eine Variable, die du im OnTimer auf % 10 prüfst - dann wird dein eigentliches OnTimer nur alle 10 Intervalle aufgerufen, du kannst aber bei jedem den Fortschrittsbalken aktualisieren ?

Delphi-Quellcode:
var i: Integer;

procedure TForm1.Ontimer(Sender: TObject);
begin
  if i mod 10 = 0 then
  begin
    // was machen
  end;
                   
    ProgressBar1.StepIt;
    ProgressBar1.Update;
end;

bonanza 27. Jun 2006 19:29

Re: ProgressBar mit Timer synchron
 
Ich versteh das net, wie ich das jetzt realisieren soll...

könnte mir vielleicht jemand ein passendes Beispiel geben, bei dem die beiden eben synchron laufen und die Prpogressbar "voll" ist, wenn der Timer abgelaufen ist.

vielen dank schonmal im voraus

mkinzler 27. Jun 2006 19:40

Re: ProgressBar mit Timer synchron
 
Soll der Timer später noch weitere Funktionen bekommen oder geht es wirklich nur um eine Verzögerung? Wenn er nur nur zur Verzögerung dient, würde ich es mit einem Timer machen sonst würde ich es wie jfheins vorgeschlagen hat machen.

bonanza 27. Jun 2006 19:55

Re: ProgressBar mit Timer synchron
 
der timer hat nur die funktion, zu zählen, bis die 30sek voll sind und die progressbar "anzutreiben". Wenn der Timer abgelaufen ist, wird aber noch eine andere funktion ausgeführt.

mkinzler 27. Jun 2006 20:00

Re: ProgressBar mit Timer synchron
 
Dann würde ich es so machen:

Delphi-Quellcode:
timer1.interval := (akt_int*100);
Button1.Caption:= 'gestartet...mit'+edit1.text+' Sek.';
Application.ProcessMessages;
ProgressBar1.Enabled := true;
progressbar1.Min := 0;
progressbar1.Max := 10;
Nun ist der Intervall des Timers 1/10 von der Wartezeit, d.h der Timer wird 10mal ausgelöst und da Max 10 ist, ist der Fortschrittsbalken am Ende angekommen.

bonanza 27. Jun 2006 20:03

Re: ProgressBar mit Timer synchron
 
also das funktioniert nicht....

wo soll denn das "stepit" hin ? eben wurde gesagt in "ontimer" aber ist das nicht viel zu spät ? denn der wird ja erst ausgelöst, wenn die 30sek abgelaufen sind.


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:18 Uhr.
Seite 2 von 3     12 3      

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-2025 by Thomas Breitkreuz