Pyuic4 in Batchdatei funktioniert nicht

Python und das Qt-Toolkit, erstellen von GUIs mittels des Qt-Designers.
Antworten
Shaldy
User
Beiträge: 123
Registriert: Sonntag 2. März 2008, 22:49

Hey zusamen!

Ich habe hier eine Batchdatei auf meinem Desktop gespeichert:

Code: Alles auswählen

cd ..
cd ..
cd ..
cd python25
cd createnic test
cd gui
ECHO In Gui angekommen
pyrcc4 -o IconRes_rc.py IconRes.qrc
ECHO Ressource kompiliert
pyuic4 -o CreateNic_Login_Setup.py CreateNic_Login.ui
ECHO Login kompiliert
pyuic4 -o CreateNic_NewPassword_Setup.py CreateNic_NewPassword.ui
ECHO NewPassword kompiliert
pyuic4 -o CreateNic_MainWindow_Setup.py CreateNic_MainWindow.ui
ECHO MainWindow kompiliert
main.py
Die letzte ECHO Meldung ist "Ressource kompiliert", danach steht der nächste Befehl zwar noch in der Zeile, aber es folgt keine Rückmeldung und die Batchdatei wird nicht weiter ausgeführt.
Wenn ich die Befehle einzeln per Hand ausführe, funktioniert alles.

Warum? Die Dateinamen stimmen 100%ig, ich habs 8 mal überprüft!

EDIT: ICh habs auch schon als Admin ausgeführt, habe nämlich Vista.
Dies ist keine Signatur!
lunar

Nicht direkt zum Problem: Lade die UI-Dateien doch direkt mit "PyQt4.uic.loadUi()" anstatt sie in Module zu kompilieren und zu importieren. Das erspart die Kompilierschritte und sorgt dafür, dass Deine Anwendung immer automatisch die aktuelle Version der GUI verwendet.
Shaldy
User
Beiträge: 123
Registriert: Sonntag 2. März 2008, 22:49

Ok, danke.
Jetzt hab ich noch ein Problem:
Wenn ich das Programm starte funktioniert alles super, aber sobald ich das Programm beende (also den x-Button drücke) kommt ein Windowsfenster "python.exe funktioniert nicht mehr"
Warum?

EDIT: Wenn ich uic.loadUi() nutze, ist die Ressource gar nicht mehr dabei, die ich im Creator dazugepackt hatte oO
Was mach ich denn jetzt schon wieder falsch??
Dies ist keine Signatur!
lunar

Offenbar stürzt Python ab. Warum, kann man Dir ohne Quelltext und genaue Fehlermeldung schlicht nicht sagen.

Bei dynamischen Laden mit "uic.loadUi()" musst Du die Ressource selbst laden. Wie das geht, steht in der Dokumentation. Wenn Du möchtest, kann ich Dir dazu auch ein Beispiel schreiben. Allerdings nicht mehr heute, schließlich ist heute Halbfinale!
Shaldy
User
Beiträge: 123
Registriert: Sonntag 2. März 2008, 22:49

Ja, das Halbfinale war aber scheiße ;)

Das Problem, dass Python abstürzt hab ich erledigt!
Das Problem mit der Ressource hab ich so gelöst, dass ich die .qrc Datei noch über pyrcc4 übersetzen lasse. Ich nehme ein so einen Befehl, wie uic.loadQrc() gibt es nicht?

Und eine Sache wäre da noch. Die Ressourcendatei benutze ich ja auch im Designer. Alle Icons und so werden angezeigt, nur das Hintergrundbild ist im Designer nicht zu sehen, davor aber im Vorschaumodus.
Dies ist keine Signatur!
Antworten