[PyKDE] Trying to launch a gui made with QTDesigner
David Boddie
david at boddie.org.uk
Sun Jan 21 13:52:10 GMT 2007
On Sat, 20 Jan 2007 20:53:53 -0800, Tony Cappellini wrote:
> I've made a simple gui that has just a few widgets on it using QTDesigner
> I was able to preview the code in QtDesigner
>
> I'm trying to launch it now from a command line script, using this example
> on Riverbank's page
[...]
> I've substituted Ui_ImageDialog with the class generated by QTDesigner
>
> from PyQt4 import QtCore, QtGui
> from mainwindow import Ui_MainWindow
>
> class MainWindow(QtGui.QDialog):
> def __init__(self):
> app = QtGui.QApplication(sys.argv)
> window = QtGui.QDialog()
> self.ui = Ui_MainWindow()
> self.ui.setupUi(window)
> window.show()
> sys.exit(app.exec_())
>
> mainwindow = MainWindow()
>
> however, I get this error, which I dont understand.
>
> Traceback (most recent call last):
> File "maingui.py", line 16, in ?
> mainwindow = MainWindow()
> File "maingui.py", line 12, in __init__
> self.ui.setupUi(window)
> File "C:\Code\mainwindow.pyw", line 227, in setupUi
> MainWindow.setCentralWidget(self.centralwidget)
> AttributeError: setCentralWidget
setCentralWidget() is a method provided by QMainWindow and its subclasses.
> Would someone explain what I'm doing wrong?
You need to use QMainWindow as the base class instead of QDialog because the
widget you made in Qt Designer is based on QMainWindow.
David
More information about the PyQt
mailing list