将Qt Designer 5.8与PyQt5一起使用:PyQt v3中的问题示例

2024-07-01 07:11:32 发布

您现在位置:Python中文网/ 问答频道 /正文

我(或多或少)理解official documentation页面的内容,除了最后一个例子,基本如下(我不在乎按钮):

from ui_imagedialog import ImageDialog

class MyImageDialog(ImageDialog):
    def __init__(self):
      super(MyImageDialog, self).__init__()

    # Connect up the buttons.
      self.okButton.clicked.connect(self.accept)

问题:我有点难以理解如何让这个片段起作用。它会出现一个错误:“cannon import name ImageDialog”。在

在前面提到的文档页面的第一个示例中,我应该添加什么来让这个代码显示一个对话框窗口?在

我的尝试: 我已经根据需要用生成的Python代码生成了一个名为ui_imagedialog.py的文件。它有以下内容,显然是独立工作的:

^{pr2}$

任何建设性的帮助都将受到感谢。在


Tags: fromimportselfui内容initdocumentation页面
1条回答
网友
1楼 · 发布于 2024-07-01 07:11:32

Qt Designer用于创建图形部分,但不用于逻辑,必须根据设计中使用的小部件创建逻辑部分。就你的名字来说,我想是QDialog。在

from ui_imagedialog import Ui_ImageDialog

from PyQt5 import QtCore, QtGui, QtWidgets

class ImageDialog(QtWidgets.QDialog, Ui_ImageDialog):
    def __init__(self, parent=None):
      super(ImageDialog, self).__init__(parent=parent)
      self.setupUi(self)

      self.pushButton.clicked.connect(self.accept)

if __name__ == "__main__":
    app = QtWidgets.QApplication(sys.argv)
    w = ImageDialog()
    w.show()
    sys.exit(app.exec_())

观察结果:ui_imagedialog.py文件中没有ImageDialog类,只有Ui_ImageDialog类,因此我生成了错误。同样在设计中,这个按钮被称为self.pushButton,,因此您不能将其称为self.okButton。在

相关问题 更多 >

    热门问题