Hallo zusammen,
ich habe ein kleines Pythonprogramm dass einen Fehler hat. Leider wird der Fehler nur sekundenbruchteile und auch noch in einem viel zu kleinen Frame angezeigt, bevor sich das Programm beendet.
Meine Frage ist nun, wie kann ich eine solche Fehler/Stacktrace-Ausgabe auf die Konsole umleiten???
Danke und Gruss,
Chris
wxApp und wxFrame Stacktraces und Fehler auf die Konsole uml
Wie hast du wx.App initialisiert? mit 0 oder 1? (redirect parameter).madRAM hat geschrieben:Hallo zusammen,
ich habe ein kleines Pythonprogramm dass einen Fehler hat. Leider wird der Fehler nur sekundenbruchteile und auch noch in einem viel zu kleinen Frame angezeigt, bevor sich das Programm beendet.
Meine Frage ist nun, wie kann ich eine solche Fehler/Stacktrace-Ausgabe auf die Konsole umleiten???
Danke und Gruss,
Chris
Sonst würd ich wx.App 0 übergeben, und dann von der console
python.exe myprog.py aufrufen.
Ansonsten ist die Frage durchaus für das Forum "Allgemeine Fragen" geeignet.
- gerold
- Python-Forum Veteran
- Beiträge: 5555
- Registriert: Samstag 28. Februar 2004, 22:04
- Wohnort: Oberhofen im Inntal (Tirol)
- Kontaktdaten:
Hi Chris!madRAM hat geschrieben:wie kann ich eine solche Fehler/Stacktrace-Ausgabe auf die Konsole umleiten?
Dank meinem neuen Buch, kann ich so langsam auch ein paar wxPython-Fragen beantworten.

Der ausschlaggebende Schalter ist redirect = False.
Code: Alles auswählen
#!/usr/bin/env python
# -*- coding: iso-8859-1 -*-
import wx
class MyFrame(wx.Frame):
def __init__(self, parent = None, id = -1, title = "wxPython"):
wx.Frame.__init__(self, parent, id, title)
self.Center()
self.Show()
class MyApp(wx.App):
def OnInit(self):
self.my_frame = MyFrame()
print "Ab in die Konsole mit dieser Meldung..."
self.MainLoop()
return True
app = MyApp(redirect = False)
mfg
Gerold

http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Hallo Gerold,gerold hat geschrieben:Hi Chris!madRAM hat geschrieben:wie kann ich eine solche Fehler/Stacktrace-Ausgabe auf die Konsole umleiten?
Dank meinem neuen Buch, kann ich so langsam auch ein paar wxPython-Fragen beantworten.![]()
das ist super.
Ich habe das Buch gestern bei Amazon (nach längerem Zögern) bestellt.
Durch den kürzlich erhaltenen Gutschein spare ich mir 5 Euronen.
Das aber app.MainLoop in App->OnInit aufgerufen wird,
sieht in meinen Augen etwas komisch aus.
Ist das so auch im Buch?

Ich würde das Grundgerüst in etwa so aufziehen:
Code: Alles auswählen
import wx
class MyFrame(wx.Frame):
def __init__(self,parent):
wx.Frame.__init__(self,parent)
self.Center()
app = wx.App(redirect = False)
frame = MyFrame(None)
frame.Show(True)
app.MainLoop()