Hallo,
eine evtl. dumme Frage ! ?
Wenn ich mein Progrämmchen (PyQt QWidget Fenster ) mit Hilfe einer Verknüpfung auf dem Desktop oder direkt über " Ausführen " starten möchte, erscheint kurz ein Fenster und dann wird es sofort wieder geschlossen.
Befehl zum Ausführen eigendlich normal :
@"C:\Python26\pythonw" "C:\Dokumente und Einstellungen\Administrator\Desktop\privat\Stahlaufmass-01\test11.py"
Was mach ich falsch ???
Programmstart mit PyQt und Windows XP
wie sieht denn eingentlich dein code aus?
starte den mal aus der console mit python (nicht pythonw), dann siehst du auch die fehlermeldung.
starte den mal aus der console mit python (nicht pythonw), dann siehst du auch die fehlermeldung.
Zuletzt geändert von Dill am Montag 18. Mai 2009, 18:34, insgesamt 1-mal geändert.
http://www.kinderpornos.info
... nicht so ungeduldig,
aber mit dem posten von 600 zeilen ist das nicht so einfach, geht nicht !
hier aber mein Programmkopf :
und hier die Eingabe der Umlaute, wie diese überall im Programm stehen :
aber mit dem posten von 600 zeilen ist das nicht so einfach, geht nicht !
hier aber mein Programmkopf :
Code: Alles auswählen
#!/usr/bin/python
# -*- coding: cp1252 -*-
# -*- coding: utf-8 -*-
import sys
from PyQt4 import QtGui
from PyQt4 import QtCore
icon_path ="../icon_22x22/"
icon_biegeliste_path ="/icon_48x48_biegeformen/"
Code: Alles auswählen
self.l_laenge = QtGui.QLabel("<font color = black size = 5>" + u"Länge/Abwicklung : " + "</font>", self.innenrahmen_bv_box)
self.l_laenge.setGeometry(5,122,150,50)
Non-ASCII character '\xe4' in file ... on line 114, but no encoding declared
hier die Zeile 114 :
hier die Zeile 114 :
Code: Alles auswählen
self.label_4 = QtGui.QLabel(u'Länge/Abwicklung :')
Der mag das "ä" nicht!! Is bei mir auch ständig der Fall, Python mag Umlaute noch nicht mal in Kommentaren...
da ich aber meist in Englisch programmiere habe ich das Problem net so oft
...
edit:
aber anderer Seits habe ich jetzt mal die encoding Zeile hinzugefügt
und das funktioniert...
da ich aber meist in Englisch programmiere habe ich das Problem net so oft

edit:
aber anderer Seits habe ich jetzt mal die encoding Zeile hinzugefügt
Code: Alles auswählen
# -*- coding: utf-8 -*-
There are 10 kinds of people. Those who understand binary notation, and those who do not.
ja, aber ich habe doch codiert und mit u = unicode den Text als Unicode dargestellt. Wie sonst kann ich in deutsch zumindestens Label beschriften ??
Das Programm läuft aber im Interpreter ohne Fehler durch !
Das Programm läuft aber im Interpreter ohne Fehler durch !
Code: Alles auswählen
#! /usr/bin/env python
# -*- coding: utf-8 -*-
import sys
from PyQt4 import QtCore ,QtGui
class MainDialog(QtGui.QMainWindow):
# constructor for the main dialog
def __init__(self, parent=None):
QtGui.QMainWindow.__init__(self, parent)
w = QtGui.QWidget()
self.setCentralWidget(w)
__layout = QtGui.QGridLayout()
self.l_laenge = QtGui.QLabel("<font color = black size = 5>" + u"Länge/Abwicklung : " + "</font>")
__layout.addWidget(self. l_laenge)
w.setLayout(__layout)
# MAIN routine
if __name__ == "__main__":
app = QtGui.QApplication(sys.argv)
dialog = MainDialog()
dialog.show()
sys.exit(app.exec_())
There are 10 kinds of people. Those who understand binary notation, and those who do not.
- cofi
- Python-Forum Veteran
- Beiträge: 4432
- Registriert: Sonntag 30. März 2008, 04:16
- Wohnort: RGFybXN0YWR0
Um das nochmal klar zu stellen, da du offensichtlich keine Ahnung hast - die zwei Encodingzeilen beweisen das.
Die Encodingzeile gibt an mit welchem Encoding die Datei codiert ist. Mit dem Codec wird dann das Script decodiert und deshalb muss die angegebene Codierung auch der tatsächlichen entsprechen.
Dass es an den Umlauten knallt zeigt, dass das Encoding eben nicht utf-8 ist. Wenn du Windows benutzt und von Unicode redest, benutzt du höchst wahrscheinlich `utf-16`.
Die Encodingzeile gibt an mit welchem Encoding die Datei codiert ist. Mit dem Codec wird dann das Script decodiert und deshalb muss die angegebene Codierung auch der tatsächlichen entsprechen.
Dass es an den Umlauten knallt zeigt, dass das Encoding eben nicht utf-8 ist. Wenn du Windows benutzt und von Unicode redest, benutzt du höchst wahrscheinlich `utf-16`.