在我的申请中, 我有三个相同的QGroupBox和一些按钮。
我希望按钮具有相同的名称,并通过QGroupBox名称访问它们。
这可能吗?
QGroupBox_one.button_export
QGroupBox_one.button_import
QGroupBox_two.button_export
QGroupBox_two.button_import
我可以用QGroupBox作为参数制作方法,并且更容易配置按钮。 感谢。
答案 0 :(得分: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_()