Как добавить в список текст из QPlainTextEdit?

Рейтинг: 1Ответов: 1Опубликовано: 21.05.2023

Как добавить в список lists текст из QPlainTextEdit?

import sys
from PyQt5 import QtWidgets
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *


lists = ['Сделайте приятное человеку напротив вас...',
         'Подарите цветы родителям на этой неделе...']


class Window(QMainWindow):
    def __init__(self):
        super(Window, self).__init__()
        self.centralwidget_ = QtWidgets.QWidget()
        self.setCentralWidget(self.centralwidget_)
        self.centralwidget_.setStyleSheet("background-color: rgb(0, 0, 153)")
        self.setWindowTitle("Дія")
        self.resize(500, 400)

        self.text_edit = QPlainTextEdit(self)
        self.text_edit.setStyleSheet("background-color: rgb(255, 255, 0); color: rgb(0, 0, 0)")
        
        self.btn_good = QPushButton(self)
        self.btn_good.setText("Додати")
        self.btn_good.setFont(QFont("Arial", 12))
        self.btn_good.setStyleSheet("background-color: rgb(255, 255, 0); color: rgb(0, 0, 0)")
        self.btn_good.clicked.connect(self.def_btn_good)

        self.geometry_ = QGridLayout(self.centralwidget_)
        self.geometry_.addWidget(self.text_edit, 1, 1)
        self.geometry_.addWidget(self.btn_good, 2, 1)

    def def_btn_good(self):
        global lists
        a_1 = self.text_edit
        lists.append(a_1)


if __name__ == "__main__":
    app = QApplication(sys.argv)
    w = Window()
    w.show()
    sys.exit(app.exec_())

Ответы

▲ 0

QString QPlainTextEdit::toPlainText() const - возвращает текст текстового редактирования как обычный текст.

import sys
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *


class Window(QMainWindow):
    lists = ['Сделайте приятное человеку напротив вас...',
             'Подарите цветы родителям на этой неделе...']

    def __init__(self):
        super(Window, self).__init__()
        
        self.centralwidget_ = QWidget()
        self.setCentralWidget(self.centralwidget_)
        self.centralwidget_.setStyleSheet("background-color: rgb(0, 0, 153)")
        self.setWindowTitle("Дія")
        self.resize(500, 400)

        self.text_edit = QPlainTextEdit(self)
        self.text_edit.setStyleSheet("""
            background-color: rgb(255, 255, 0); 
            color: #A52A2A;
            font-size: 24px;
        """)
        
        self.btn_good = QPushButton(self)
        self.btn_good.setText("Додати")
        self.btn_good.setFont(QFont("Arial", 12))
        self.btn_good.setStyleSheet("background-color: rgb(255, 255, 0); color: rgb(0, 0, 0)")
        self.btn_good.clicked.connect(self.def_btn_good)

        self.geometry_ = QGridLayout(self.centralwidget_)
        self.geometry_.addWidget(self.text_edit, 1, 1)
        self.geometry_.addWidget(self.btn_good, 2, 1)

    def def_btn_good(self):
#        global lists
        a_1 = self.text_edit.toPlainText()
        print(f'\n{a_1}\n')                     #
        self.lists.append(a_1)
        print(*self.lists, sep='\n')            #
        

if __name__ == "__main__":
    app = QApplication(sys.argv)
    w = Window()
    w.show()
    sys.exit(app.exec_())

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