PyQt5 QButtonGroup() как передать имя нажатой кнопки в функцию?

пишу непобедимые крестики нолики и столкнулся с проблемой:

self.btn_grp = QButtonGroup()
self.btn_grp.setExclusive(True)
self.btn_grp.addButton(self.pushButton_6, id = 6)
self.btn_grp.addButton(self.pushButton_7, id = 7)
self.btn_grp.addButton(self.pushButton_2, id = 2)
self.btn_grp.addButton(self.pushButton_1, id = 1)
self.btn_grp.addButton(self.pushButton_5, id = 5)
self.btn_grp.addButton(self.pushButton_9, id = 9)
self.btn_grp.addButton(self.pushButton_8, id = 8)
self.btn_grp.addButton(self.pushButton_3, id = 3)
self.btn_grp.addButton(self.pushButton_4, id = 4)
self.btn_grp.checkedId()
self.btn_grp.buttonClicked.connect(self.pressed())

как мне передать имя нажатой кнопки через conect в функцию или хотябы id?


Ответы (1 шт):

Автор решения: gil9red

Пример для получения id кнопки и ее текста

Обратите внимание, что подправил код коннекта, т.к. туда нужно передавать ссылку на функцию, а не результат ее выполнения

Попробуйте:

    ...
    self.btn_grp.buttonClicked.connect(self.pressed)

def pressed(self, button):
    print(self.btn_grp.id(button), button.text())
→ Ссылка