2

我通过以下方式建立了一个组复选框:

self.group = QtGui.QButtonGroup()

如何获得被点击的复选框文本?

self.group.buttonClicked.connect(self.btnCliked)
4

2 回答 2

2

信号发送被点击的buttonClicked按钮,所以你只需要:

    def btnClicked(self, button):
        print(button.text())
于 2015-04-08T16:40:59.833 回答
1

您是否只使用按钮/收音机/检查(意味着一次只能选择一个)?根据您想要做什么,您可以使用“点击”信号的参数,例如:

self.group.clicked.connect(self.btnClicked)

def btnClicked(self, button):
    self.text = button.text()

或者您也可以使用每个 on_button_clicked 函数,这几乎相同(您不需要连接信号,它会自动完成):

...
@QtCore.pyqtSignature('')
def on_mybutton1_clicked(self, button):
    self.text = button.text()

@QtCore.pyqtSignature('')
def on_mybutton2_clicked(self, button):
    self.text = button.text()
...

(“on_mybutton1_clicked”中的“mybutton1”是每个按钮的名称)

或者,如果您想稍后在某个操作中获取状态,例如按下另一个按钮的按钮,您可以这样做:

def on_anyaction(self):
    button = self.group.selected()
    self.text = button.text()

我希望这有助于给你一些意见......

于 2015-04-10T11:58:53.463 回答