我正在制作PyQt应用程序,UI文件是使用Qt Designer设计的。它的初始结构是这样的:
MainWindow
- CentralWidget
- PaintWidget (which was promoted from QWidget)
由于当窗口最大化时paintwidget没有调整大小,我根据这里的建议在MainWindow类的centerwidget中添加了一个布局:PyQt: getting widgets to resize automatically in a QDialog
class MainWindow(QtGui.QMainWindow):
def __init__(self):
super(MainWindow, self).__init__()
uic.loadUi('mainwindow.ui', self)
top_layout = QtGui.QVBoxLayout(self.centralWidget)
self.centralWidget.setLayout(top_layout)
top_layout.addWidget(self.paintwidget)
if __name__ == '__main__':
app = QtGui.QApplication(sys.argv)
mainWin = MainWindow()
mainWin.show()
ret = app.exec_()
sys.exit(ret)
但是,应用程序窗口不再显示。当我在Wing IDE中运行它时,调试过程立即退出。
我也尝试直接在Qt Designer中为centralWidget设置布局,但是应用程序也没有执行。为什么呢?