使用PyQt,可以使用三种不同的方法来处理在Designer中创建的表单:
- 使用单一继承并将表单设为成员变量
- 使用多重继承
- 直接从UI文件动态生成成员
单一继承 :
class MyTableWidget(QTableWidget): def __init__(self, parent, *args): super(MyTableWidget, self).__init__(parent, args) self.ui = YourFormName() self.ui.setupUi(self) # all gui elements are now accessed through self.ui def mousePressEvent(self, event): pass # do something useful
多重继承 :
class MyTableWidget(QTableWidget, YourFormName): def __init__(self, parent, *args): super(MyTableWidget, self).__init__(parent, args) self.setupUi(self) # self now has all members you defined in the form def mousePressEvent(self, event): pass # do something useful
动态生成 :
from PyQt4 import uicyourFormTypeInstance = uic.loadUi('/path/to/your/file.ui')对于上面的(3),您将最终得到一个为表单指定的基本类型的实例。然后,您可以
mousePressEvent根据需要覆盖。
建议您阅读PyQt4参考手册中的13.1节。第13.2节讨论模块。
uic



