PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : kdialog progressbar beispiel gesucht



alegria
27.07.08, 07:44
Hey!

Hab mich schon beim linux-forum (http://www.linux-forum.de/beispiel-fuer-progressbar-von-kdialog-gesucht-17128.html) versucht, leider bisher aber ohne Erfolg weshalb ich nun Euch frage.

Ich suche verzweifelt ne Möglichkeit die progressbar funktionalität von kdialog zu verstehen und in eigene skripts einzubauen.


Vielleicht kann mir ja jemand helfen die progressbar geschichte wiederverwendbar für beliebige skript statements nutzen zu können. Sagen wir mal ich habe ein befehl der schön lange dauert (=paar Sekunden) wie etwa:
Code:


grep -l -i wort *.pdf

Wie kann ich den Fortschritt der Suche nun per progressbargeschiche anzeigen? Wie gesagt - der Code vom KDE Team hilft mir nicht weiter... Mal abgesehen davon das ich nicht weiss wo mein befehl nun hinkommt irritieren mich die sleep2, was ja heisst das theoretisch immer 8 sekunden laufen....

Hier für die damit vielleicht was anfangen können:
Code:


dcopRef=`kdialog --progressbar "Initialising" 4`
dcop $dcopRef setProgress 1
dcop $dcopRef setLabel "Thinking really hard"
sleep 2
dcop $dcopRef setProgress 2
sleep 2
dcop $dcopRef setLabel "Thinking some more"
dcop $dcopRef setProgress 3
sleep 2
dcop $dcopRef setProgress 4
sleep 2
dcop $dcopRef close

Bin für jede Hilfe dankbar...

Die offizielle KDE Doku (mit der ich halt auch nur nix anfangen kann....) steht hier (http://techbase.kde.org/Development/Tutorials/Shell_Scripting_with_KDE_Dialogs#Progress_Dialogs) .

spidyRF
01.08.08, 18:51
Vorab eine Anmerkung: Ich habe auch ein bisschen mit "kdialog" gespielt und hatte genau dieses Problem, Bin dann bei "kommander" gelandet.

Evtl. hilft Dir mein Beitrag bei pc-forum24.de (post #12) (http://www.pc-forum24.de/suse-system-konfigurieren/9910-geloest-kommander.html) weiter. Bei Punkt 5 findest Du diese Zeile:


dcop @dcopid KommanderIf setText ProgressBar1 $N

die "dcopid" ist das Problem. Du kannst diese Zeile so nicht mit "kdialog" / "Deinem Shell-Script" verwenden, da es eine Funktion vom "kommander ist".

Ich bin (fast) sicher, dass Du ohne "dcop" nicht weiterkommst. Wie Du via Deinem Shell-Script die notwendige "dcopid" ermitteln kannst, da kann ich Dir leider nicht helfen.

"dcop" ist , wie auch immer, Dein Freund !

Cheers.

Spidy

alegria
03.08.08, 17:08
Danke für den Link. Immerhin mal eine Antwort wenn auch nicht die Lösung...

Habs nochmal direkt bei KDE probiert:
http://www.kde-forum.de/artikel/3177/kdialog-progressbar-verwenden.html

Manoman
03.08.08, 18:24
Hi

zero english Kenntnis ?

"sleep" ist ein program/kommando und die "2" die Sekunden anzahl wie lange es schlafen soll.

wie sieht dein skript aus ?, hast du !#/bin/bash in der ersten Zeile oder .sh als Dateiendung ?

habe kein WM/KDE,
öffne ein terminal und kopiere Example 1: Password Dialog von der KDE-Doku-Seite
ins Terminal und drücke Enter, ein Passwort-Dialog soll erscheinen ? Ja ?

ciao

edit:
der Skript muss auch ausführbar sein, z.B. mit
chmod +x meinskriptderetwastut.sh

edit2:

kopiere dein Beispiel in eine Textdatei, füge !#/bin/bash in der ersten Zeile hinzu, mache es ausführbar, und ... ? tutsichwas ?

edit3:
richtig ist #!/bin/bash