Fehler bei Qt-Beispielprogramm - underlying C/C++ object has been deleted

09/11/2008 - 23:07 von Thomas Mlynarczyk | Report spam
Hallo,

Ich habe das Buch "Python - Das umfassende Handbuch" von Ernesti/Kaiser
und wollte den dort im Qt-Kapitel (S. 655ff) beschriebenen Beispielcode
ausprobieren, nachdem ich mit dem Qt-Designer die Datei hauptdialog.py
erstellt hatte:

import sys
from PyQt4 import QtGui
from hauptdialog import Ui_Hauptdialog as Dlg

class MeinDialog( QtGui.QDialog, Dlg ):
def __init__( self ):
self.setupUi( self )

app = QtGui.QApplication( sys.argv )
dialog = MeinDialog()
dialog.show()
sys.exit( app.exec_() )

Statt des erhofften Dialogfensters kommt aber leider nur eine
Fehlermeldung mit der ich nun wirklich nichts anzufangen weiß:

Traceback (most recent call last):
File "C:\Dokumente und Einstellungen\Thomas Mlynarczyk\Eigene
Dateien\python\qttest\programm.py", line 10, in <module>
dialog = MeinDialog()
File "C:\Dokumente und Einstellungen\Thomas Mlynarczyk\Eigene
Dateien\python\qttest\programm.py", line 7, in __init__
self.setupUi( self )
File "C:\Dokumente und Einstellungen\Thomas Mlynarczyk\Eigene
Dateien\python\qttest\hauptdialog.py", line 14, in setupUi
Hauptdialog.setObjectName("Hauptdialog")
RuntimeError: underlying C/C++ object has been deleted

Kann mir da jemand helfen?

Gruß,
Thomas

Ce n'est pas parce qu'ils sont nombreux à avoir tort qu'ils ont raison!
(Coluche)
 

Lesen sie die antworten

#1 Diez B. Roggisch
09/11/2008 - 23:45 | Warnen spam
Thomas Mlynarczyk schrieb:
Hallo,

Ich habe das Buch "Python - Das umfassende Handbuch" von Ernesti/Kaiser
und wollte den dort im Qt-Kapitel (S. 655ff) beschriebenen Beispielcode
ausprobieren, nachdem ich mit dem Qt-Designer die Datei hauptdialog.py
erstellt hatte:

import sys
from PyQt4 import QtGui
from hauptdialog import Ui_Hauptdialog as Dlg

class MeinDialog( QtGui.QDialog, Dlg ):
def __init__( self ):
self.setupUi( self )

app = QtGui.QApplication( sys.argv )
dialog = MeinDialog()
dialog.show()
sys.exit( app.exec_() )

Statt des erhofften Dialogfensters kommt aber leider nur eine
Fehlermeldung mit der ich nun wirklich nichts anzufangen weiß:

Traceback (most recent call last):
File "C:\Dokumente und Einstellungen\Thomas Mlynarczyk\Eigene
Dateien\python\qttest\programm.py", line 10, in <module>
dialog = MeinDialog()
File "C:\Dokumente und Einstellungen\Thomas Mlynarczyk\Eigene
Dateien\python\qttest\programm.py", line 7, in __init__
self.setupUi( self )
File "C:\Dokumente und Einstellungen\Thomas Mlynarczyk\Eigene
Dateien\python\qttest\hauptdialog.py", line 14, in setupUi
Hauptdialog.setObjectName("Hauptdialog")
RuntimeError: underlying C/C++ object has been deleted

Kann mir da jemand helfen?



Ich kann da im Moment nur in's Blaue hinein raten - aber ich finde es
etwas seltsam das deine Anwendung nur einen Dialog, nicht aber ein
QMainWindow hat. Was passiert denn, wenn du statt QDialog QMainWindow
verwendest?

Alternativ koenntest du auch mal probieren als das parent des Dialoges
die applikation zu uebergeben. Koennte auch fuer den Mainwindow-Ansatz
gelten.

Ansonsten versuch's mal mit diesem Tutorial:

http://www.rkblog.rk.edu.pl/w/p/sim...tor-pyqt4/


Diez

Ähnliche fragen