PyQt5: Как я могу подключить QPushButton к слоту?
Итак, почти каждый учебник / документация, написанная на человеческом языке, предназначена для PyQt4. Но PyQt5 изменил весьподключить кнопку к слоту работает, а я все еще могуне могу понять, как это сделать.
Я сделал быстрый графический интерфейс в QtDesigner, и у меня есть QPushButton и метка. Когда я нажимаю кнопку, я хочу, чтобы текст на этикетке изменился. в C ++ в QtDesigner, это 'легко соединить два. Но я должен написать все это на Python.
Я конвертирую .ui файл с pyuic5 в .py файл. Там, в классе Ui_MainWindow, я вижу метод setupUi, который инициализирует self.button следующим образом
self.testButton = QtWidgets.QPushButton(self.centralWidget)
self.testButton.setObjectName("newGame")
затем, в конце метода,
QtCore.QMetaObject.connectSlotsByName(MainWindow)
называется, но, если честно, я могуt понять, что он делает и с чем это связано.
в главном классе, наследуя от QMainWindow, я пишу следующий метод
@pyqtSlot(name='change')
def change_text(self):
self.ui.testLabel.setText("Button Clicked!")
И я могу't выяснить, как подключить сигнал кнопки к этому слоту. В pyqt4 я мог настроить его вручную, выполнив button.clicked.connect (self.change_text), но, как ямы выяснили, что PyQt5 устарел и отказался от такой простой настройки.
Пожалуйста, кто-нибудь может мне помочь с этим?