pyQt - 如何使基于QGroupBox的小部件选择

问题描述:

在我的应用程序, 我有三个相同的QGroupBoxes与一些按钮。pyQt - 如何使基于QGroupBox的小部件选择

我想要通过QGroupBox名称为按钮和访问相同的名称。

这可能吗?

QGroupBox_one.button_export 
QGroupBox_one.button_import 

QGroupBox_two.button_export 
QGroupBox_two.button_import 

比我可以使用QGroupBox作为参数的方法和配置按钮更容易。 谢谢。

我认为一个干净的方式来做你想做的是创建一个新的类(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_() 
+0

我使用的是pyQt设计器,所以我在我的gui设计中创建了空的groupBoxes。并用这个MyQGroupBoxes类填充它们。谢谢。 – Meloun 2011-01-24 09:17:36