pyQt - 如何基于QGroupBox进行控件选择
在我的应用程序中,
我有三个相同的QGroupBox,每个里面都有一些按钮。
我想给这些按钮起一样的名字,并且通过QGroupBox的名字来访问它们。
这样做可以吗?
QGroupBox_one.button_export
QGroupBox_one.button_import
QGroupBox_two.button_export
QGroupBox_two.button_import
这样我就可以写一个方法,把QGroupBox作为参数,这样配置按钮会更简单。
谢谢。
1 个回答
1
我觉得一个简单明了的方法就是创建一个新的类(MyQGroupBoxes),这个类里面包含你需要的按钮和配置的方法。
from PyQt4 import QtGui
class MyQGroupBoxes(QtGui.QGroupBox):
def __init__(self, parent):
QtGui.QGroupBox.__init__(self, parent)
self.button_export = QtGui.QPushButton("Export", self)
self.button_import = QtGui.QPushButton("Import", self)
layout = QtGui.QVBoxLayout(self)
self.setLayout(layout)
layout.addWidget(self.button_export)
layout.addWidget(self.button_import)
def config_export(self):
# config your button
pass
def config_import(self):
# config your button
pass
if __name__ == "__main__":
app = QtGui.QApplication(sys.argv)
my_box1 = MyQGroupBoxes(None)
my_box2 = MyQGroupBoxes(None)
my_boxes = [my_box1, my_box2]
# Config all the boxes
for my_box in my_boxes:
my_box.config_export()
my_box.config_import()
my_box.show()
app.exec_()