Pyqt5 и боты, передать вводимую информацию в переменую

Решил поставить своего бота для варкрафта на GUI.
Я создал интерфейс через Qt Designer и преобразовал его в пайтон код.

Теперь проблема.
На срине представлен мой бот (сейчас только картинка гуи) и мне нужно передать вводимую информацию в переменую user_info
Как это сделать?

введите сюда описание изображения


Весь код GUI:

from PyQt5 import QtCore, QtGui, QtWidgets


class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(349, 471)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.buttonspel = QtWidgets.QLabel(self.centralwidget)
        self.buttonspel.setGeometry(QtCore.QRect(10, 280, 121, 21))
        self.buttonspel.setObjectName("buttonspel")
        self.xhekpail = QtWidgets.QRadioButton(self.centralwidget)
        self.xhekpail.setGeometry(QtCore.QRect(10, 240, 211, 21))
        self.xhekpail.setObjectName("xhekpail")
        self.start = QtWidgets.QPushButton(self.centralwidget)
        self.start.setGeometry(QtCore.QRect(10, 310, 321, 61))
        self.start.setObjectName("start")
        self.buttonspel1 = QtWidgets.QKeySequenceEdit(self.centralwidget)
        self.buttonspel1.setGeometry(QtCore.QRect(130, 280, 81, 20))
        self.buttonspel1.setObjectName("buttonspel1")
        self.Lenbot = QtWidgets.QLabel(self.centralwidget)
        self.Lenbot.setGeometry(QtCore.QRect(10, 10, 281, 111))
        self.Lenbot.setObjectName("Lenbot")
        self.dushnim = QtWidgets.QLabel(self.centralwidget)
        self.dushnim.setGeometry(QtCore.QRect(20, 110, 291, 91))
        self.dushnim.setObjectName("dushnim")
        self.prochital = QtWidgets.QRadioButton(self.centralwidget)
        self.prochital.setGeometry(QtCore.QRect(10, 200, 82, 17))
        self.prochital.setObjectName("prochital")
        self.git = QtWidgets.QLabel(self.centralwidget)
        self.git.setGeometry(QtCore.QRect(10, 380, 291, 21))
        self.git.setObjectName("git")
        self.giturl = QtWidgets.QLabel(self.centralwidget)
        self.giturl.setGeometry(QtCore.QRect(10, 405, 221, 31))
        self.giturl.setObjectName("giturl")
        self.OBIZATELNO = QtWidgets.QLabel(self.centralwidget)
        self.OBIZATELNO.setGeometry(QtCore.QRect(220, 280, 81, 16))
        self.OBIZATELNO.setObjectName("OBIZATELNO")
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 349, 21))
        self.menubar.setObjectName("menubar")
        MainWindow.setMenuBar(self.menubar)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
        
        
        self.add_functions()

    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "Len.bot"))
        self.buttonspel.setText(_translate("MainWindow", "введите кнопку спэла"))
        self.xhekpail.setText(_translate("MainWindow", " посмотреть что будер рыспылено"))
        self.start.setText(_translate("MainWindow", "СТАРТ"))
        self.Lenbot.setText(_translate("MainWindow", "<html><head/><body><p align=\"center\"><span style=\" font-weight:600; font-style:italic;\">Len.bot - новый бот, который упрощает гейм-</span></p><p align=\"center\"><span style=\" font-weight:600; font-style:italic;\">плей нашей любимой игры.</span></p><p align=\"center\"><span style=\" font-weight:600; font-style:italic;\">Зачем нам делать нудное дело самим,</span></p><p align=\"center\"><span style=\" font-weight:600; font-style:italic;\">если есть этот бот?</span></p></body></html>" ))
        self.dushnim.setText(_translate("MainWindow", "<html><head/><body><p align=\"center\"><span style=\" font-size:10pt; font-style:italic;\">немного подушним,</span></p><p align=\"center\"><span style=\" font-size:10pt; font-style:italic;\">обязательно прочитай инструкцию,</span></p><p align=\"center\"><span style=\" font-size:10pt; font-style:italic;\">она лежит в папке с ботом</span></p></body></html>"))
        self.prochital.setText(_translate("MainWindow", "прочитал?????????"))
        self.git.setText(_translate("MainWindow", "<html><head/><body><p><span style=\" font-size:12pt; font-weight:600; font-style:italic;\">мой гитхаб-</span></p><p><span style=\" font-size:12pt;\"><br/></span></p></body></html>"))
        self.giturl.setText(_translate("MainWindow", "<html><head/><body><p><span style=\" font-size:10pt; font-weight:600;\">https://github.com/Lennet8002</span></p></body></html>"))
        self.OBIZATELNO.setText(_translate("MainWindow", "ОБЯЗАТЕЛЬНО!"))
        
    def add_functions(self):
        self.xhekpail.clicked.connect(self.pail_chek)    #запомнить 25минут
        self.start.clicked.connect(self.start_chek)
        self.buttonspel.
        
    def pail_chek(self):
        user_info = "yes"
        
    def start_chek(self):
        start = "enter"

if __name__ == "__main__":
    import sys
    app = QtWidgets.QApplication(sys.argv)
    MainWindow = QtWidgets.QMainWindow()
    ui = Ui_MainWindow()
    ui.setupUi(MainWindow)
    MainWindow.show()
    sys.exit(app.exec_())

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

Автор решения: S. Nick

НИКОГДА НЕ ИЗМЕНЯЙТЕ код, сгенерированный Qt Designer, НИКОГДА.
Создайте другой класс, который наследуется от соответствующего виджета, и используйте созданный класс для его заполнения.

from PyQt5 import QtCore, QtGui, QtWidgets


class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(349, 471)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        
        self.buttonspel = QtWidgets.QLabel(self.centralwidget)
        self.buttonspel.setGeometry(QtCore.QRect(10, 280, 121, 21))
        self.buttonspel.setObjectName("buttonspel")
        
        self.xhekpail = QtWidgets.QRadioButton(self.centralwidget)
        self.xhekpail.setGeometry(QtCore.QRect(10, 240, 211, 21))
        self.xhekpail.setObjectName("xhekpail")
        
        self.start = QtWidgets.QPushButton(self.centralwidget)
        self.start.setGeometry(QtCore.QRect(10, 310, 321, 61))
        self.start.setObjectName("start")
       
        self.buttonspel1 = QtWidgets.QKeySequenceEdit(self.centralwidget)
        self.buttonspel1.setGeometry(QtCore.QRect(130, 280, 81, 20))
        self.buttonspel1.setObjectName("buttonspel1")
        
        self.Lenbot = QtWidgets.QLabel(self.centralwidget)
        self.Lenbot.setGeometry(QtCore.QRect(10, 10, 281, 111))
        self.Lenbot.setObjectName("Lenbot")
        
        self.dushnim = QtWidgets.QLabel(self.centralwidget)
        self.dushnim.setGeometry(QtCore.QRect(20, 110, 291, 91))
        self.dushnim.setObjectName("dushnim")
        
        self.prochital = QtWidgets.QRadioButton(self.centralwidget)
        self.prochital.setGeometry(QtCore.QRect(10, 200, 82, 17))
        self.prochital.setObjectName("prochital")
        
        self.git = QtWidgets.QLabel(self.centralwidget)
        self.git.setGeometry(QtCore.QRect(10, 380, 291, 21))
        self.git.setObjectName("git")
        
        self.giturl = QtWidgets.QLabel(self.centralwidget)
        self.giturl.setGeometry(QtCore.QRect(10, 405, 221, 31))
        self.giturl.setObjectName("giturl")
        
        self.OBIZATELNO = QtWidgets.QLabel(self.centralwidget)
        self.OBIZATELNO.setGeometry(QtCore.QRect(220, 280, 81, 16))
        self.OBIZATELNO.setObjectName("OBIZATELNO")
        
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtWidgets.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 349, 21))
        self.menubar.setObjectName("menubar")
        MainWindow.setMenuBar(self.menubar)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)
        
# ?        self.add_functions()

    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "Len.bot"))
        self.buttonspel.setText(_translate("MainWindow", "введите кнопку спэла"))
        self.xhekpail.setText(_translate("MainWindow", " посмотреть что будер рыспылено"))
        self.start.setText(_translate("MainWindow", "СТАРТ"))
        self.Lenbot.setText(_translate("MainWindow", "<html><head/><body><p align=\"center\"><span style=\" font-weight:600; font-style:italic;\">Len.bot - новый бот, который упрощает гейм-</span></p><p align=\"center\"><span style=\" font-weight:600; font-style:italic;\">плей нашей любимой игры.</span></p><p align=\"center\"><span style=\" font-weight:600; font-style:italic;\">Зачем нам делать нудное дело самим,</span></p><p align=\"center\"><span style=\" font-weight:600; font-style:italic;\">если есть этот бот?</span></p></body></html>" ))
        self.dushnim.setText(_translate("MainWindow", "<html><head/><body><p align=\"center\"><span style=\" font-size:10pt; font-style:italic;\">немного подушним,</span></p><p align=\"center\"><span style=\" font-size:10pt; font-style:italic;\">обязательно прочитай инструкцию,</span></p><p align=\"center\"><span style=\" font-size:10pt; font-style:italic;\">она лежит в папке с ботом</span></p></body></html>"))
        self.prochital.setText(_translate("MainWindow", "прочитал?????????"))
        self.git.setText(_translate("MainWindow", "<html><head/><body><p><span style=\" font-size:12pt; font-weight:600; font-style:italic;\">мой гитхаб-</span></p><p><span style=\" font-size:12pt;\"><br/></span></p></body></html>"))
        self.giturl.setText(_translate("MainWindow", "<html><head/><body><p><span style=\" font-size:10pt; font-weight:600;\">https://github.com/Lennet8002</span></p></body></html>"))
        self.OBIZATELNO.setText(_translate("MainWindow", "ОБЯЗАТЕЛЬНО!"))


class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow):      # +++
    def __init__(self):                                      # +++
        super().__init__()                                   # +++
        self.setupUi(self)                                   # +++
        
        # !!! Тут ваша логика
# +++        
        self._start = None                                   # +++
        self._user_info = None                               # +++
        self._str_value = None                               # +++
        

#?        self.xhekpail.clicked.connect(self.pail_chek) # запомнить 25мин ?
# +++
        self.buttonGroup = QtWidgets.QButtonGroup()          # +++
        self.buttonGroup.addButton(self.prochital)           # +++
        self.buttonGroup.addButton(self.xhekpail)            # +++
        self.buttonGroup.buttonClicked.connect(
            self.check_button)                               # +++
        
        self.start.clicked.connect(self.start_chek)

#?        self.buttonspel   


#    def pail_chek(self):
# +++
    def check_button(self, radioButton):                     # +++
        self._user_info = radioButton.text()                 #? "yes"
        print(f'\ndef pail_chek(self): {self._user_info}')   #
        
    def start_chek(self):
        self._str_value = self.buttonspel1.keySequence().toString() # +++
        print(f'\ndef start_chek(self): {self._str_value}')         #
        self._start = "enter"                                       #?
        print(f'def start_chek(self): {self._start}')               #
        print(f'def start_chek(self): {self._user_info}')           #
        

if __name__ == "__main__":
    import sys
    app = QtWidgets.QApplication(sys.argv)
    w = MainWindow()                                            # !!!
    w.show()                                                    # !!!
    sys.exit(app.exec())

введите сюда описание изображения

→ Ссылка