Gui PyQt5 - как сделать часть интерфейса появляющейся в MainWindow после нажатия кнопки - Python
Формулировка задачи:
Привет сообществу! Ломаю мозг и зубы об графику для консольного приложения с использованием PyQt5, не могу понять элементарную вещь. Просветите, как сделать часть интерфейса появляющейся в MainWindow после нажатия кнопки.
Если можно, лучше объяснить, а не скидывать готовое решение
. Заранее спасибо. Hi folks PyQt5 is really a stumbling block for me. I'm trying to make one part of interface appear in MainWindow as user clicks a button, but anything goes wrong. Could you help me?It would be better to explain how to do it than just sending ready-to-use code
, if it's possible. Thanks beforehand.Решение задачи: «Gui PyQt5 - как сделать часть интерфейса появляющейся в MainWindow после нажатия кнопки»
textual
Листинг программы
import os from PyQt5.QtWidgets import QApplication, QWidget, QDesktopWidget, QPushButton, QMainWindow, QLineEdit from PyQt5.QtGui import QIcon class main_window (QMainWindow): def __init__(self): super().__init__() self.initUI () self.line_edit () def initUI (self): scr_width = int(QDesktopWidget().availableGeometry().width()) scr_height = int(QDesktopWidget().availableGeometry().height()) self.setGeometry (0,0, scr_width, scr_height) self.setWindowTitle ('LibList') self.setWindowIcon(QIcon('icon.png')) button_give = QPushButton ('Выдать классу', self) button_give.resize (400, 200) button_give.move (scr_width - 420, 20) button_give.clicked.connect(self.button_clicked) button_search = QPushButton ('Найти файл', self) button_search.resize (400, 200) button_search.move (scr_width - 420, 240) button_search.clicked.connect(self.button_clicked) button_redact = QPushButton ('Отредактировать файл', self) button_redact.resize (400, 200) button_redact.move (scr_width - 420, 460) button_redact.clicked.connect(self.button_clicked) button_end = QPushButton ('Закончить работу', self) button_end.resize (400, 200) button_end.move (scr_width - 420, 680) button_end.clicked.connect(self.button_clicked) self.show () def line_edit (self): line_edit_class_num = QLineEdit (self) line_edit_class_num.setPlaceholderText ('Введите цифру класса*') line_edit_class_num.move (20, 20) line_edit_class_num.resize (380, 40) line_edit_class_let = QLineEdit (self) line_edit_class_let.setPlaceholderText ('Введите букву класса*') line_edit_class_let.move (20, 80) line_edit_class_let.resize (380, 40) line_edit_class_pup = QLineEdit (self) line_edit_class_pup.setPlaceholderText ('Введите количество обучающихся в классе*') line_edit_class_pup.move (20, 140) line_edit_class_pup.resize (380, 40) line_edit_class_tut = QLineEdit (self) line_edit_class_tut.setPlaceholderText ('Введите имя классного руководителя*') line_edit_class_tut.move (20, 200) line_edit_class_tut.resize (380, 40) line_edit_class_prof = QLineEdit (self) line_edit_class_prof.setPlaceholderText ('Введите профиль/профили класса') line_edit_class_prof.move (20, 260) line_edit_class_prof.resize (380, 40) self.hide () def button_clicked (self): sender = self.sender() self.statusBar().showMessage(sender.text() + ' was pressed') if sender.text() == 'Выдать классу': self.statusBar().showMessage('1 was pressed') self.line_edit_class_num.setVisible (isVisible) self.line_edit_class_let.setVisible (isVisible) self.line_edit_class_pup.setVisible (isVisible) self.line_edit_class_tut.setVisible (isVisible) self.line_edit_class_prof.setVisible (isVisible) elif sender.text() == 'Найти файл': self.statusBar().showMessage('2 was pressed') else: if sender.text() == 'Отредактировать файл': self.statusBar().showMessage('3 was pressed') else: self.statusBar().showMessage('4 was pressed') app = QApplication(sys.argv) mw = main_window () sys.exit(app.exec_())
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д