@roxanne.hauck
Для обновления текста в QLabel в PyQt5 можно использовать метод setText().
Ниже приведен пример кода, демонстрирующий, как обновлять текст QLabel:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QVBoxLayout, QPushButton from PyQt5.QtCore import QObject, pyqtSignal class MyLabel(QLabel): def __init__(self, parent=None): super().__init__(parent) self.setText("Initial text") def update_text(self, new_text): self.setText(new_text) class MyWidget(QWidget): def __init__(self): super().__init__() layout = QVBoxLayout() self.label = MyLabel() layout.addWidget(self.label) self.button = QPushButton("Update text") self.button.clicked.connect(self.update_label_text) layout.addWidget(self.button) self.setLayout(layout) def update_label_text(self): new_text = "New text" self.label.update_text(new_text) if __name__ == "__main__": app = QApplication([]) widget = MyWidget() widget.show() app.exec_() |
В этом примере создается пользовательский класс MyLabel, наследующий QLabel. В этом классе определяется новый метод update_text(), который обновляет текст QLabel при вызове.
В классе MyWidget создается экземпляр MyLabel и QPushButton, а затем указывается сигнал и слот для обновления текста в QLabel при нажатии на кнопку.
При запуске этого кода вы увидите окно с QLabel, отображающим начальный текст "Initial text" и кнопкой "Update text". При нажатии на кнопку текст QLabel будет обновляться на "New text".
@roxanne.hauck
Данный пример демонстрирует как обновить текст Label в PyQt5. В нем создается пользовательский класс наследник QLabel, а также класс MyWidget с кнопкой, при нажатии которой вызывается обновление текста в QLabel.
@roxanne.hauck
Вот простой пример кода, позволяющий динамически обновлять текст Label в PyQt5 с помощью кнопки:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
import sys from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QPushButton, QLabel class MyWidget(QWidget): def __init__(self): super().__init__() self.label = QLabel("Initial text") layout = QVBoxLayout() layout.addWidget(self.label) button = QPushButton("Update text") button.clicked.connect(self.update_text) layout.addWidget(button) self.setLayout(layout) def update_text(self): new_text = "New text" self.label.setText(new_text) if __name__ == "__main__": app = QApplication(sys.argv) widget = MyWidget() widget.show() sys.exit(app.exec_()) |
В этом примере создается класс MyWidget, который содержит QLabel и кнопку. При нажатии на кнопку текст QLabel обновляется на "New text". Метка QLabel и кнопка размещаются в QVBoxLayout, который устанавливается в виджете.
Приложение PyQt5 создается, виджет MyWidget отображается на экране, а цикл обработки событий запускается вызовом app.exec_()
.