Delphi-PRAXiS

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/)
-   -   Delphi Progressbar und TGauge (https://www.delphipraxis.net/11292-progressbar-und-tgauge.html)

ninja 3. Nov 2003 17:54


Progressbar und TGauge
 
Hallo.
Ich habe mal eine Frage zu den Komponenten Progressbar und TGauge.
Und zwar möchte ich eines von beiden anzeigen lassen, während im Hintergrund eine Dos-Ausgabebox läuft. Diese wird über ShellExecute angestossen.
Ungefähr verstanden habe ich ,das ich die MIN und MAX und Step werte eintragen muß, wie schaffe ich es aber diese beiden ans laufen zubekommen, wenn ich den button drücke??
thx im vorraus
ninja
PS. weis nicht ob ich im richtigen Forum bin, wenn nicht entschuldigung.

Duffy 3. Nov 2003 18:09

Re: Progressbar und TGauge
 
Hallo ninja,
Do mußt den Wert Position füllen.
bye
Claus

Die Muhkuh 3. Nov 2003 18:18

Re: Progressbar und TGauge
 
Hi Ninja,

wenn ich dich richtig verstanden hab willst du auf Knopf die Progressbar aund die Gauge füllen?

Mach's am besten so:

Platziere eine Timer Koponente auf der Form, eine Progressbar, eine Gauge und einen Button.

Stell beim Timer den Intervall auf 50 (oder weniger wirst nachher sehen) und Enabled auf false. Danach in's OnTimer-Event kommt das
Delphi-Quellcode:

Progressbar1.Position := Progressbar1.Position + 1;
Gauge1.Progress := Gauge1.Progress + 1;

Danach in's OnClick event vom Button das:

Delphi-Quellcode:
Timer1.Enabled := true;
Dann sollte es funktionieren!

Spider

himitsu 3. Nov 2003 18:30

Re: Progressbar und TGauge
 
@Spider

Delphi-Quellcode:
ProgressBar1.Position := ProgressBar1.Position + 1;
{=}
Progressbar1.StepBy(1);

ProgressBar1.Position := ProgressBar1.Position + Progressbar1.Step;
{=}
Gauge1.StepIt;

Gauge1.Progress := Gauge1.Progress + 1;
{=}
Gauge1.AddProgress(1);

Duffy 3. Nov 2003 18:34

Re: Progressbar und TGauge
 
Hallo himitsu,
Zitat:

Zitat von himitsu
Delphi-Quellcode:
Progressbar1.Progress := Progressbar1.Progress + 1;

Progresss ???? welche Progressbar ???
bye
Claus

Die Muhkuh 3. Nov 2003 18:34

Re: Progressbar und TGauge
 
@Himitsu

Ja kann man auch machen! Aber ich denk meins ist noch ein bisschen verständlicher! Ich denke das Ninja noch nicht so lange proggt!

ninja 3. Nov 2003 18:36

Re: Progressbar und TGauge
 
:lol: :lol: ja super , danke genau das hatte ich gesucht.
thx ninja :zwinker:

ja bin noch blutiger anfänger.........und vergesse leider abundzu die einfachsten sachen, aber ich arbeite dran :zwinker:

himitsu 3. Nov 2003 19:30

Re: Progressbar und TGauge
 
@Duffy
:oops: vertauscht - hätte das wohl an AddProgress auch schon merken müssen

ninja 8. Nov 2003 12:34

Re: Progressbar und TGauge
 
hallo. ich habe noch mal eine fage dazu.
und zwar möchte ich einen brennvorgang( dieser läuft im Hintergrund, auf der form ist nur die progressbar oder TGauge zusehen) mittels einer Progressbar oder der Tgauge darstellen. ich bin jetz soweit das ich die verzeichnissgröße habe, in diesem verzeichniss liegen die files die gebrannt werden sollen, dh. die verzeichnissgröße variert, deswegen muß ich die verzeichnisgröße immer neu auslesen.
siehe auch
anderes Thema

das hat soweit funktioniert
und dann habe ich noch die frage: wie bekomme ich diesen wert jetzt noch durch eine beliebige zahl geteilt, z.B. 600 KB/s (ist auch abhängig von der verschiedenen Brenngeschwindigkeit im moment 4x wegen den rohlingen)
ich möchte nämlich diese zeit ausrechnen und diese dann in der Progressbar ablaufen lassen.
thx im vorraus
gruß ninja

himitsu 8. Nov 2003 13:25

Re: Progressbar und TGauge
 
Delphi-Quellcode:
Const Tempo1x = 153600 {150 KB/s * 1024};
  {bei DVD's sind das 1,3-1,4 MB/s}

Var Verzeichnis: String;
  Tempo: Byte;
  Zeit: Integer;


Verzeichnis := 'E:\Download';
Tempo := 4; {1=1x(150 KB/s), 2=2x(300 KB/s), 4=4x(600 KB/s)...}

Zeit := GetDirSize(Verzeichnis, True) div (Temp * Temo1x);
Zeit = die Zeit für den Brennvorgang in Sekunden, allerdings ohne Leadin, Leadout, Verzeichnisstruktur und so - nur die reinen Dateiinhalte.

ninja 9. Nov 2003 13:24

Re: Progressbar und TGauge
 
hallo.
ich danke dir. so was hab ich gesucht.
habs auch gleich mal ausprobiert.
was mir allerdings aufgefallen ist das nicht mit gleichbleibender geschwindigkeit gebrannt wird.
ich hab seit dran rumprobiert und hab gedacht, auch wegen der zeit von lead-in und lead-out und das fixieren, mess die zeit und korregiere die zeit um die zusätzliche zeit. dabei ist mir aufgefallen das je mehr mb gebrannt werden die KB/s ansteigen, die standart 150 KB/s ereiche ich nur bei ca.423 mb daten die gebrannt werden. und dann hab ich mal getestet bei einer höheren brenngeschwindigkeit (mein brenner kann 16x max. brennen.)und auch da stimmt 16x nicht mit 16x überein. im moment bin ich grad am zeiten aufnehmen um vieleicht zusehen ob man das ganze irgendwie in einer formel miteinander verknüpfen kann bezogen auf die datengröße bzw. verzeichnisgröße.
kann also sein das noch nen paar fragen von mir kommen. :roll:
thx erstmal
gruß ninja :zwinker:


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:00 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