Layout
from PyQt5 import QtCore, QtGui, QtWidgets class Ui_newperson(object): def setupUi(self, newperson): newperson.setObjectName("newperson") newperson.resize(600, 600) newperson.setMinimumSize(QtCore.QSize(600, 600)) newperson.setMaximumSize(QtCore.QSize(600, 600)) self.label = QtWidgets.QLabel(newperson) self.label.setGeometry(QtCore.QRect(10, 62, 301, 31)) font = QtGui.QFont() font.setPointSize(16) self.label.setFont(font) self.label.setAlignment(QtCore.Qt.AlignCenter) self.label.setObjectName("label") self.name = QtWidgets.QLineEdit(newperson) self.name.setGeometry(QtCore.QRect(320, 70, 231, 20)) self.name.setObjectName("name") self.label_2 = QtWidgets.QLabel(newperson) self.label_2.setGeometry(QtCore.QRect(110, 10, 401, 31)) font = QtGui.QFont() font.setPointSize(16) self.label_2.setFont(font) self.label_2.setObjectName("label_2") self.label_3 = QtWidgets.QLabel(newperson) self.label_3.setGeometry(QtCore.QRect(170, 130, 241, 31)) font = QtGui.QFont() font.setPointSize(16) self.label_3.setFont(font) self.label_3.setAlignment(QtCore.Qt.AlignCenter) self.label_3.setObjectName("label_3") self.aboutpersontext = QtWidgets.QTextBrowser(newperson) self.aboutpersontext.setGeometry(QtCore.QRect(50, 171, 501, 241)) self.aboutpersontext.setObjectName("aboutpersontext") self.image = QtWidgets.QPushButton(newperson) self.image.setGeometry(QtCore.QRect(10, 500, 271, 51)) self.image.setObjectName("image") self.makeperson = QtWidgets.QPushButton(newperson) self.makeperson.setGeometry(QtCore.QRect(220, 420, 131, 51)) self.makeperson.setObjectName("makeperson") self.preview = QtWidgets.QPushButton(newperson) self.preview.setGeometry(QtCore.QRect(410, 420, 161, 51)) self.preview.setObjectName("preview") self.result = QtWidgets.QLabel(newperson) self.result.setGeometry(QtCore.QRect(110, 570, 391, 20)) self.result.setText("") self.result.setAlignment(QtCore.Qt.AlignCenter) self.result.setObjectName("result") self.image_2 = QtWidgets.QPushButton(newperson) self.image_2.setGeometry(QtCore.QRect(300, 500, 271, 51)) self.image_2.setObjectName("image_2") self.retranslateUi(newperson) QtCore.QMetaObject.connectSlotsByName(newperson) def retranslateUi(self, newperson): _translate = QtCore.QCoreApplication.translate newperson.setWindowTitle(_translate("newperson", "Form")) self.label.setText(_translate("newperson", "Имя исторической личности:")) self.label_2.setText(_translate("newperson", "Создание новой исторической личности")) self.label_3.setText(_translate("newperson", "Введите его описание:")) self.image.setText(_translate("newperson", "Добавить картинку главную картинку")) self.makeperson.setText(_translate("newperson", "Добавить персонажа")) self.preview.setText(_translate("newperson", "Посмотреть текст")) self.image_2.setText(_translate("newperson", "Добавить картинки фантомов")) Window Class
class NewPerson(QtWidgets.QWidget): def __init__(self): super().__init__() self.ui = Ui_newperson() self.ui.setupUi(self) self.setWindowTitle("Создание нового персонажа") self.name = "" self.text = "" self.FaceOfPerson = "" self.FacesOfPerson = "" # События нажатия на кнопки self.ui.image.clicked.connect(self.ChoiceImage) self.ui.makeperson.clicked.connect(self.MakeNewPerson) self.ui.preview.clicked.connect(self.Preview) self.ui.image_2.clicked.connect(self.ChoiceImages) # Подключаем текстовые поля self.ui.name.textChanged.connect(self.NewPersonName) self.ui.aboutpersontext.textChanged.connect(self.NewPersonAboutText) # ТЕКСТОВОЕ ПОЛЕ "НОВОЕ ИМЯ" def NewPersonName(self, name): self.name = name # ТЕКСТОВОЕ ПОЛЕ "НОВОЕ ОПИСАНИЕ" def NewPersonAboutText(self): self.text = self.ui.aboutpersontext.toPlainText() # ФУНКЦИЯ Загрузки изображения def ChoiceImage(self): self.FaceOfPerson = QtWidgets.QFileDialog.getOpenFileName(self, "Выберите картинку с лицом исторической личности", None, "Image (*.png *.jpg)")[0] print(self.FaceOfPerson) # ФУНКЦИЯ Загрузки изображения фантомов def ChoiceImages(self): self.FacesOfPerson = QtWidgets.QFileDialog.getOpenFileNames(self, "Выберите картинку с лицами фантомов", None, "*.png *.jpg") print(self.FacesOfPerson[0][1]) # ФУНКЦИЯ Открытия окна Предварительного просмотра def Preview(self): self.preview = DescriptionPersonPreview() self.preview.show() QTextBrowser does not work; you simply cannot insert text into it.