AGB  ·  Datenschutz  ·  Impressum  







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

TProgressbar entsprechende Opendialog Files

Ein Thema von danku · begonnen am 5. Mai 2007 · letzter Beitrag vom 5. Mai 2007
Antwort Antwort
Benutzerbild von danku
danku

Registriert seit: 9. Apr 2006
Ort: 32-bit Adressbus
181 Beiträge
 
Delphi 7 Enterprise
 
#1

TProgressbar entsprechende Opendialog Files

  Alt 5. Mai 2007, 11:52
Delphi-Quellcode:
...
  Progressbar1.Min:=1;
  Progressbar1.Max:= opendiag.files.count;


   //Füllen der StringGrid mit Opendialog1Daten
   sender.RowCount := opendiag.Files.Count+1;
   edaltsender.text := getcurrentdir;


for j:= ProgressBar1.min to ProgressBar1.Max do begin

   for i:=0 to opendiag.files.count -1 do begin
   sender.cells[0,1+i]:= ExtractFileName(opendiag.Files[i]);
   sender.cells[1,1+i]:= Extractfilename(opendiag.Files[i]);
   sender.cells[2,1+i]:= floattostr(FileSize (opendiag.Files.Strings[i]) div 1024);

   Progressbar1.Position:=j;

   end;
  
end;
...
Hi. Ich lade per Opendialog x-beliebige Files in eine stringgrid (sender).
ein fortschrittsbalken soll das optisch unterstützen.
das problem ist bloß da erst alle dateien in die stringgrid geladen werden,
und erst danach der fortschrittsbalken "wächst".
gibts eine möglichkeit, nach jeder geöffneten, einzelnen datei, den fortschrittsbalken kontinuierlich zu increasen?

mfg danku
  Mit Zitat antworten Zitat
Benutzerbild von inherited
inherited

Registriert seit: 19. Dez 2005
Ort: Rosdorf
2.022 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: TProgressbar entsprechende Opendialog Files

  Alt 5. Mai 2007, 12:01
Setz noch ein "Application.ProcessMessages" in die Schleife.
€dit: In Delphi hamma den Punkt-Operator, net den ->
Nikolai Wyderka

SWIM SWIM HUNGRY!
Neuer Blog: hier!
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#3

Re: TProgressbar entsprechende Opendialog Files

  Alt 5. Mai 2007, 12:06
Was soll die äussere Schleife? Setz den Max-Wert der Fortschrittanzeige auf die Anzahl der ausgewählten Dateien, die Schrittweite auf eins und erhöhe in der Schleife zum Öffnen der Dateien die Positin der Fortschrittsanzeige um eins:
Delphi-Quellcode:
Progressbar1.Max := opendiag.files.count;
Progressbar1.Step := 1;
for i:=0 to opendiag.files.count -1 do begin
  sender.cells[0,1+i]:= ExtractFileName(opendiag.Files[i]);
  sender.cells[1,1+i]:= Extractfilename(opendiag.Files[i]);
  sender.cells[2,1+i]:= floattostr(FileSize (opendiag.Files.Strings[i]) div 1024);
  Progressbar1.StepIt;
  Progresbar1.Refresh;
end;
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von danku
danku

Registriert seit: 9. Apr 2006
Ort: 32-bit Adressbus
181 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: TProgressbar entsprechende Opendialog Files

  Alt 5. Mai 2007, 12:16
was war denn so an der äußeren schleife falsch?
  Mit Zitat antworten Zitat
Benutzerbild von Cyberbob
Cyberbob

Registriert seit: 24. Jan 2005
Ort: Karben
626 Beiträge
 
Delphi XE7 Architect
 
#5

Re: TProgressbar entsprechende Opendialog Files

  Alt 5. Mai 2007, 13:31
Nichts, sie ist einfach nur Sinnlos und sorgt dafür, das dein Counter mehrmals durchläuft, auch wenn schon alles abgearbeitet wird. so macht er bei 6 dateien 36 (6*6) durchläufe und das sollte nicht im sinne des erfinders sein!
Christian
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#6

Re: TProgressbar entsprechende Opendialog Files

  Alt 5. Mai 2007, 13:40
Doch sie war nicht nur sinnlos, sondern auch falsch. Wenn du sechs Dateien auswählst, wird die innere Schleife, in der die Dateien geladen werden, sechs mal ausgeführt. Jede Datei wird also sechs mal geladen. Und ich kann mir nicht vorstellen, dass das so sein sollte.
Michael
Ein Teil meines Codes würde euch verunsichern.
  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 10:28 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