Fehler bei Progressbar-Anzeige

Begonnen von mexx, 11. Februar 2009, 09:11:42

Vorheriges Thema - Nächstes Thema

mexx

mmmmhhhhhhhhhh,

also das mit dem WSH-Panel funzt bei mir nicht.
Hab das Script eingefügt. Sieht auch alles so wie im Bild aus.

Aber der Fortschritt wird nicht angezeigt.
Und wenn ich in die Progressbar reinklicke, stürzt foobar ab. :(

tedgo

Tja, dann brauchst du möglicherweise das WSH Panel von T.P. Wang:
WSH Panel 0.7.2 (ohne SSE2)

mexx

Genau das wars. Hatte die mit SSE2.

huber71

 ^^ ziehe meine humorvolle anmerkung hiermit zurück  ^^

mexx

Zitat von: huber59 in 11. Februar 2009, 20:11:40
^^ ziehe meine humorvolle anmerkung hiermit zurück  ^^

:baseball: ;) :)

tedgo

Und funktioniert es?

Wenn du übrigens die Nachkommastellen weghaben möchtest, müsstest du ein paar kleine Änderungen am Script vornehmen. Da muss dann ein bisschen TitleFormatting herhalten, weil da ohne Nachkommastellen gerechnet wird (ein anderer Weg fällt mir da jetzt nicht ein):
- Öffne die Textdatei mit dem Skript im Editor und lass die Statusbar anzeigen
- gehe zu Zeile 72 ("var percentage = 100*fb.PlaybackTime/fb.PlaybackLength;") und und überschreib diese mit:
var g_titlefmt = fb.TitleFormat("$div($mul(100,%playback_time_seconds%),%length_seconds%) '%' ");
- die darunterliegenden Zeile ("txt = percentage.toString().substr(0,4) + "%";") überschreibst du mit:
txt = g_titlefmt.Eval();
- Speichere das Skript und füge es in das WSH Panel ein

Das sollte klappen.

mexx

jou,

hatte den Vollzug schon 4 Post's weiter oben gemeldet. :)

Das andere werd ich mal testen. Aber erst morgen. Werde mich dann nochmal melden. :)

tedgo

Zitat von: mexx in 11. Februar 2009, 20:25:08
hatte den Vollzug schon 4 Post's weiter oben gemeldet. :)

Autsch!
Hatte ich überlesen :)

mexx

Hab die Zeilen doch noch eingefügt. :)

Funzt alles prima. :top: Auch ohne Kommastellen.

Nun hab ich ja genügend Möglichkeiten. :D :D

Also nochmals THX
mexx

tedgo

So, habe jetzt durch Zufall diesen Thread wiederentdeckt.

Inzwischen kenne ich mich mit JScript ja ein bisschen besser aus und deshalb hier eine Lösung für die dezimalstellenfreie Prozentangabe ohne Title Formatting:

in Zeile 72 im oben geposteten Script aus:
var percentage = 100*fb.PlaybackTime/fb.PlaybackLength;
folgendes machen:
txt = Math.round(100*fb.PlaybackTime/fb.PlaybackLength) + "%";
und die darunterliegende Zeile:
txt = percentage.toString().substr(0,4) + "%";
einfach löschen.

So einfach geht das, wenn man's weiß...  ::)
(Hatte mir damals die Berechnung einfach aus einem anderen Script kopiert, ohne sie genauer anzuschauen)

mexx

Jo,

ich muss auch nochmal hier rein.

Meine Progressbar funzt ja prima. Aber die Einteilung in 10 %-Schritte ist nicht ganz exakt. Der Balken ist bei den vollen Prozenten immer kurz über die Skalierung hinaus.



Wo kann ich das im Script ändern. z.B. die Skalierung leicht verschieben.

Das Script stammt ja von Tedgo. Vielleicht kann er mir helfen. ;)

Script ist angehängt.

tedgo

#41
Probiers mal mit dem Script aus dem Anhang.
Durch Rundungsfehler wird es aber trotzdem nicht 100% passen ;)

EDIT:
Bitte noch mal downloaden, da war ein kleiner Fehler drin  ::)

mexx

Danke. So ist das schon viel besser. :top:

Jetzt schaltet es an der Scalierung korrekt um.

Jetzt werden aber viel kleinere Schritte gemacht. Ich gehe davon aus, dass dies so sein muss.

Aber zum Verständnis....an welchem Teil des Scriptes hast du jetzt gedreht?

tedgo

#43
Die Schritte sind gleich groß, da habe ich nichts geändert.

Ich habe nur eine zusätzliche Variable (area) eingeführt, die die Breite des letzten Separators von der Breite des Panels abzieht und lasse die Position der Fortschrittsanzeige jetzt innerhalb dieser "area" ermitteln. War jetzt die schnellste Lösung.
Hauptsache, es klappt :D

PS: Nicht vergessen: Noch mal downloaden, da im Script ein Fehler war!

mexx

Stimmt, die Schritte sind gleich groß.

Als ich das verglichen hatte, lief grad ein 16-Minuten-File. Daher erschienen die Schritte wohl kürzer. ::)

Und.....OK, hab das Script nochmal runtergeladen.

THX
mexx