N
N
Nikita Yaremenko2020-05-01 13:36:32
Python
Nikita Yaremenko, 2020-05-01 13:36:32

How to change text of Label PyQt5?

The essence of the program: sending messages to email addresses with the PyQt5 interface. It should be possible to display the status of the program in the qLabel. But the problem is that when you try to change the text of the Label, nothing happens, while at the same time the status is reflected on the command line using print, and it works ..
Here is the code:

class MyWin(QtWidgets.QMainWindow):
    


#Иницилизация приложения
    def __init__(self, parent=None):
        QtWidgets.QWidget.__init__(self, parent)
        
        self.ui = Ui_MainWindow()

        self.ui.setupUi(self)

        self.ui.Enter.clicked.connect(self.enterOpen) #Иницилизация кнопки


#Работа кнопки отправить
    def enterOpen(self):

        self.ui.status.setText("Вход в учётную запись")
        print("Вход в учётную запись")
        entering(self.ui.Email.text(), self.ui.Pasword.text())

        print("Отправка сообщений")
        self.ui.status.setText("Отправка сообщений")
        send(entering(self.ui.Email.text(), self.ui.Pasword.text()))

        print("Сообщения успешно отправлены")
        self.ui.status.setText("Сообщения успешно отправлены")

        time.sleep(3)
        print("В ожидании входа")
        self.ui.status.setText("В ожидании входа")     

        self.ui.Email.clear()
        self.ui.Pasword.clear()



#Вход в учётную запись
def entering(email,pasword):
    yag = yagmail.SMTP(email,pasword)
    return yag


#Отправка сообщений
def send(yag): 
    yag.send(
        to=database.receiver,
        subject=database.subj,
        contents=database.body, 
        attachments=database.filename,
    )
    

#Запуск программы
if __name__ == "__main__":       
    app = QtWidgets.QApplication([])
    application = MyWin()
    application.show()
    sys.exit(app.exec())

Answer the question

In order to leave comments, you need to log in

1 answer(s)
A
Andy_U, 2020-05-01
@Andy_U

Replace: with
self.ui.status.setText("Вход в учётную запись")
self.ui.setText("Вход в учётную запись")

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question