Progress Bar (Forschrittbalken)
Übersicht

![]() |
4pacBetreff: Progress Bar (Forschrittbalken) |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi liebe Coders,
ich hab mal eine Grundfrage zu Progress Bars. Und zwar, wenn ich damit anzeigen will, wieweit eine Datei mit z.B. 20.000 Zeilen bereits durchgeparst wurde. Daß die Datei 20.000 Zeilen hat, weiß ich bzw. mein Proggy aber erst, wenn er die letzte davon eingelesen hat. Vorher fehlt mir also quasi der 100%-Wert, die 20.000, die weiß das Proggy ja vorher gar net - wie kann ich dann also die Progress Bar berechnen, die ja sinnvollerweise auf einem prozentualen Wert basiert?? Und das Problem habe ich immer bei längeren Arbeitsvorgängen. Man müsste die im Prinzip vorher einmal im Hintergrund ausführen, um schonmal zu wissen wieviele Einträge abzuarbeiten sind. Wäre natürlich praktisch Unsinn. Wie löst man das? Viele Grüße, Thomas |
||
Klaas |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Du könntest nicht Zeilen sondern Bytes nehmen, die würdest du mit filesize ja bekommen.
Wenn du unbedingt die Zeilen wissen mußt könntest du alle vorkommen von chr(13) bzw chr(10) suchen bevor du die Zeilen verarbeitest. Es kommt ein wenig darauf an was du mit den Zeilen machst !? Wenn die Zeilen ca. alle gleichlang sind dann könnte man auch die Zeilen so ca. überschlagen. Ist natürlich nich so elegant. |
||
![]() |
wunderkind |
![]() Antworten mit Zitat ![]() |
---|---|---|
Auf Zeilenebene gar nicht, würde ich behaupten. Eine Gleichung, zwei Unbekannte; das wird nichts. Aber du weißt doch, wieviel Byte die Datei groß ist und wieviele Zeichen du mit den bisher eingelesenen Zeilen verarbeitet hast. Du berechnet den Fortschritt quasi auf Zeichenebene. | ||
![]() |
Kernle 32DLL |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich weis nicht ob dir dashire hilft,aber ich versuchs mal:
Zitat: brauchen wa nit mehr
So,das wars erstmal.Die Farbtiefe muss üprigens nicht 16 sein,die Full-Screen einstellung allerdings 1. Denn wenn die nicht 1 ist,wird die Loadbar falsch,bzw. garnicht dargestellt. mfg,kernle PS: Die Bilder dazu kommen in wenigen sekunden |
||
Mein PC: "Bluelight" - Xtreme Gamer PC [Video]
Meine Projekte: Cube-Wars 2010 [Worklog] Anerkennungen: 1. Platz BCC #7 , 1. Platz BCC #22 , 3. Platz BAC #89 Ich war dabei: NRW Treff III, IV ; Frankfurter BB Treffen 2009 |
- Zuletzt bearbeitet von Kernle 32DLL am Do, Dez 09, 2004 19:58, insgesamt einmal bearbeitet
OJay |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
kernle, hier gehts nicht darum, eine progressbar zu programmieren, sondern, wie man den fortschrittsstatus beim laden ermitteln kann. bitte erst alle posts lesen, bevor du deine halbweisheiten hier reinknallst.
on topic: ich würde das auch byte-weise ermitteln. gesamtgrösse hast du, und die grösse der aktuell verarbeiteten zeile erhälst du, in dem du einfach ein strlen drüber bläst. wenn ich mich recht errinnere, war doch in einer datei jedes zeichen ein byte gross, oder? ![]() |
||
![]() |
Kernle 32DLL |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ahh,jetzt weis ich was ihr wollt ^^ Mom,ich hab da so ne idee.
(Wenn ich es hab kommt heir rein) gruß: kernle |
||
Mein PC: "Bluelight" - Xtreme Gamer PC [Video]
Meine Projekte: Cube-Wars 2010 [Worklog] Anerkennungen: 1. Platz BCC #7 , 1. Platz BCC #22 , 3. Platz BAC #89 Ich war dabei: NRW Treff III, IV ; Frankfurter BB Treffen 2009 |
![]() |
wunderkind |
![]() Antworten mit Zitat ![]() |
---|---|---|
OJay hat Folgendes geschrieben: kernle, hier gehts nicht darum, eine progressbar zu programmieren, sondern, wie man den fortschrittsstatus beim laden ermitteln kann. bitte erst alle posts lesen, bevor du deine halbweisheiten hier reinknallst.
[ot]Puh, wie du gerade in den letzten Posts wieder mit der Belehrermentalität prahlst...schlichtweg ekelerregend. Einfach mal...[/ot] |
||
![]() |
4pac |
![]() Antworten mit Zitat ![]() |
---|---|---|
Danke, Leute das hab ich dann geschnallt. Bytes als Grundlage und nicht Zeilen. Ich kam nicht drauf, weil ich noch nie byteweise aus Dateien eingelesen habe, aber ist schon klar jetzt vom Grundsatz her. Müsste ich dann auch hinbekommen.
Grüße, Thomas |
||
Woody the woodiest |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Kann man nicht auch anhand der Größe der Datei (in byte) die Anzahl der Zeilen ermitteln. Irgendwelche Maßstäbe muss es da doch geben oder sind einge Zeichen größer als andere und die Zeilenanzahl ist somit nicht genau ermittelbar?
Sorry, wenn ich jetzt irgendeinen sh** laber, es is ja nur eine Idee. |
||
Am Sonntag sind die Autobahnen leer, so kann man ruhig in Urlaub fahren.
Würden alle so denken, wären die Autobahnen am Sonntag voll. Warum sind sie es trotzdem nicht? Weil der Großteil der Bevölkerung gar nicht denken KANN. |
Klaas |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Zeilen entstehen durch unsichtbare "Umbruchzeichen". Meißtens Chr(13) und chr(10).
Die Zeichen sind meißt alle gleich groß. Bei ASCII sind das jeweils 1 Byte pro Zeichen. Wie lang eine Zeile in Bytes ist kommt also drauf an wieviel in der Zeile steht. Deshalb läßt sich die Menge der Zeilen nur darüber ermitteln wieoft das Zeichen chr(10) bzw chr(13) im Text auftaucht ... dazu muß man allerdings einmal durch die komplette Datei eiern um eben diese zu zählen. |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group