[Gelöst/Tutorial: So funktioniert die TProgessBar]

Für Fragen rund um die Ide und zum Debugger
Antworten
heheracer
Beiträge: 54
Registriert: Mo 17. Nov 2014, 16:45

[Gelöst/Tutorial: So funktioniert die TProgessBar]

Beitrag von heheracer »

Hi!
Ich wollte zuerst fragen wie die TProgressBar funktioniert, habe es allerdings durch probieren selbst herausgefunden (Google konnte nicht helfen).

Die TProgessBar arbeiten in "Steps" (dt. Schritten).
Standardmäßig ist so ein Schritt '10' groß.
Mit dem Befehl TProgessBar.Step:=X kann man die Größe des Schrittes auf X (Integer) setzten.
Um einen "Step zu machen" kann man den Befehl TProgressBar.StepIt benutzen.
Um die "Größe" der TProgressBar festzulegen benutzt man den Befehl TProgressBar.Min/Max:=X (Integer).
Mit TProgressBar.Position (Integer) kann man sich die Position anzeigen lassen oder diese verändern.

Ein kleines Beispiel:

Code: Alles auswählen

unit Unit1;
 
{$mode objfpc}{$H+}
 
interface
 
uses
  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, ComCtrls,
  StdCtrls;
 
type
 
  { TForm1 }
 
  TForm1 = class(TForm)
    Button1: TButton;
    ProgressBar1: TProgressBar;
    procedure Button1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { private declarations }
  public
    { public declarations }
  end;
 
var
  Form1: TForm1;
 
implementation
 
{$R *.lfm}
 
{ TForm1 }
 
procedure TForm1.Button1Click(Sender: TObject);
begin
  ProgressBar1.StepIt;
  showmessage(inttostr(progressbar1.position));
  if ProgressBar1.Position=10 then
    begin
      ProgressBar1.Position:=0;
      showmessage('Reset TProgressBar');
    end;
end;
 
procedure TForm1.FormCreate(Sender: TObject);
begin
  progressbar1.step:=1;
  ProgressBar1.Min:=0;
  ProgressBar1.Max:=10;
end;
 
end.
 


Beim Erstellen der Form setzen wir den "Umfang" der TProgressBar auf 11 (0..10), wobei 0 0% sind und 10 100%.
Über einen Button gehen wir jedes Mal um 1 nach vorne (d. h. 10%) und lassen uns "unsere Position anzeigen", bzw. die Prozentzahl/10. Haben wir das Maximum erreicht, wird die Position wieder auf Null zurückgesetzt.
Zuletzt geändert von heheracer am Mo 6. Apr 2015, 21:48, insgesamt 1-mal geändert.

Komoluna
Beiträge: 565
Registriert: So 26. Aug 2012, 09:03
OS, Lazarus, FPC: Windows(10), Linux(Arch)
CPU-Target: 64Bit

Re: TProgessBar auf null setzen / neu erstellen ?

Beitrag von Komoluna »

probier mal die Eigentschaft Position der Progressbar aus...
(außerdem schau dir mal ein paar Tutorials zum Thema Objektorientierte programmierung an)

MFG

Komoluna
Programmer: A device to convert coffee into software.

Rekursion: siehe Rekursion.

Benutzeravatar
theo
Beiträge: 10498
Registriert: Mo 11. Sep 2006, 19:01

Re: TProgessBar auf null setzen / neu erstellen ?

Beitrag von theo »

Keine Ahnung was du da machst.

Die Position des Progressbars bestimmt man mit der Eigenschaft ..... TATAAAA: "Position"

EDIT: Komoluna war schneller.

Komoluna
Beiträge: 565
Registriert: So 26. Aug 2012, 09:03
OS, Lazarus, FPC: Windows(10), Linux(Arch)
CPU-Target: 64Bit

Re: [Gelöst/Tutorial: So funktioniert die TProgessBar]

Beitrag von Komoluna »

@theo:
Du hast 5min für deinen Post gebraucht??? ^^

MFG

Komoluna
Programmer: A device to convert coffee into software.

Rekursion: siehe Rekursion.

Benutzeravatar
theo
Beiträge: 10498
Registriert: Mo 11. Sep 2006, 19:01

Re: [Gelöst/Tutorial: So funktioniert die TProgessBar]

Beitrag von theo »

Komoluna hat geschrieben:@theo:
Du hast 5min für deinen Post gebraucht??? ^^


Hatte versucht seinen ursprünglichen Code zu verstehen. Das hat mich völlig paralysiert. :mrgreen:

Komoluna
Beiträge: 565
Registriert: So 26. Aug 2012, 09:03
OS, Lazarus, FPC: Windows(10), Linux(Arch)
CPU-Target: 64Bit

Re: [Gelöst/Tutorial: So funktioniert die TProgessBar]

Beitrag von Komoluna »

Achso, das StepIt hatte mich auch verwirrt, wusste garnicht dass es das gibt...

MFG

Komoluna
Programmer: A device to convert coffee into software.

Rekursion: siehe Rekursion.

Antworten