从QtCreator覆盖PyQt中的QMainWindow方法

时间:2016-02-10 18:55:12

标签: python python-3.x pyqt qt-creator

我有这个由<!DOCTYPE html> ... <script> ... </script> pyuic5参数生成的GUI代码。我已经将一些代码添加到-x,例如通过串口连接到arduino。我希望在程序通过Ui_LEDController关闭时实现断开Arduino 我知道我必须覆盖X方法QMainWindow,但我想知道我应该采取哪些步骤来实现这一目标。我不能只创建closeEvent()然后class MyWindow(QtWidgets.QMainWindow()),因为我无法访问序列变量。
所以基本上:我不应该使用这个LEDController = MyWindow()来设置GUI项而不是创建Ui_LEDController,我将在其中实现所有GUI项并覆盖class MyWindow(QtWidgets.QMainWindow())

closeEvent()

1 个答案:

答案 0 :(得分:1)

您至少有两种方式:

QMainWindowUi_LEDController

的子类
class MyWindowClass(QMainWindow, Ui_LEDController):

或仅使用属性QMainWindow

self.ui子类
class MyWindowClass(QMainWindow):
    def __init__(self):
        ...
        self.ui = Ui_LEDController()
        self.ui.setupUi(self)

然后使用两个类的所有变量