[PyQt] PyKDE application crashes on exit
Benno Dielmann
lists at benno-dielmann.de
Thu Jul 31 00:26:20 BST 2008
On Thursday 31 July 2008 00:05:25 Jim Bublitz wrote:
| On Wednesday 30 July 2008 12:56, Benno Dielmann wrote:
| > Hi,
| >
| > This PyKDE4 application always crashes on exit:
| > ---------------------------------------------------------
| > import sys
| > from PyQt4.QtCore import *
| > from PyQt4.QtGui import *
| > from PyKDE4.kdecore import ki18n, KAboutData, KCmdLineArgs
| > from PyKDE4.kdeui import KApplication
| >
| > class Benup(QWidget):
| > def __init__(self, parent=None):
| > super(Benup, self).__init__(parent)
| > self.splash = QLabel('testing...')
| > layout = QVBoxLayout()
| > layout.addWidget(self.splash)
| > self.setLayout(layout)
| >
| > if __name__ == '__main__':
| > appName = "benup"
| > catalog = ""
| > programName = ki18n("Benup")
| > version = "0.1"
| > aboutData = KAboutData(appName, catalog, programName, version)
| > KCmdLineArgs.init(sys.argv, aboutData)
| > app = KApplication()
| > b = Benup()
| > b.show()
| > app.exec_()
| > ---------------------------------------------------------------------
| >
| > Any ideas why? It doesn't crash if I make self.splash local, i.e.
| > removing the "self.". What am I doing wrong?
|
| I'm not completely certain of this, but some of the shutdown/cleanup code
| for KDE apps has historically been in KMainWindow (or descendants like
| KXMLGuiWindow, KParts.MainWindow). So I'd try making Benup a subclass of
| one of those.
Yes, using KXmlGuiWindow solved the problem. This should be documented
somewhere, e.g. in
http://www.riverbankcomputing.co.uk/static/Docs/PyKDE4/using.html
Thank you very much for your precious help,
Benno.
More information about the PyQt
mailing list