Каким образов можно вывести текст, используя QPlainTextEdit? Нужно полученный в ходе "вычислений" текст вывести в окошко виджета.
Как это сделать, какие методы использовать, сигналы, слоты и т.д.

21 Авг 2019 в 07:08
194 +1
1
Ответы
1

Для вывода текста в QPlainTextEdit можно использовать методы appendPlainText() или setPlainText().

Пример:

from PyQt5.QtWidgets import QApplication, QPlainTextEdit
app = QApplication([])
text_edit = QPlainTextEdit()
text_edit.setPlainText("Hello, world!")
# Дополнение текста
text_edit.appendPlainText("Additional text")
text_edit.show()
app.exec_()

Если вам нужно выводить текст в окно после каких-то "вычислений", вы можете использовать сигналы и слоты. Например, вы можете создать собственный сигнал, который будет передавать текст для вывода, и подключить его к слоту, который добавит этот текст в QPlainTextEdit.

Пример:

from PyQt5.QtWidgets import QApplication, QPlainTextEdit
from PyQt5.QtCore import QObject, pyqtSignal, pyqtSlot
class TextEmitter(QObject):
textChanged = pyqtSignal(str)
def changeText(self):
# Здесь делаем какие-то вычисления
text = "Hello, world!"
self.textChanged.emit(text)
app = QApplication([])
text_edit = QPlainTextEdit()
def updateText(text):
text_edit.appendPlainText(text)
text_emitter = TextEmitter()
text_emitter.textChanged.connect(updateText)
text_emitter.changeText()
text_edit.show()
app.exec_()

В примере выше, при вызове метода changeText() будет сгенерирован сигнал textChanged, который будет передавать текст для вывода в QPlainTextEdit через слот updateText.

20 Апр в 13:07
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 92 548 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир