Найти тему
ФинPython

Создание оконного приложения на Python объектно-ориентированным методом (ООП).

В этой статье мы напишем оконное приложение ООП-методом используя код из другой статьи.

При объектно-ориентированном методе код программы пишется через создание классов (Class) и функций (def). Поэтому после подключения необходимых библиотек создадим класс и назовём его MyWin.

from PyQt5 import QtWidgets
import sys

class MyWin(QtWidgets.QWidget):

в качестве параметров класса передадим ему другой класс - QWidget.

Далее определим конструктор класса и передадим ссылку на родительский компонент.

def __init__(self, parent=None):
QtWidgets.QWidget.__init__(self, parent)

После этого можно добавлять компоненты формы - надписи, кнопки, контейнеры, таблицы и другие виджеты а также назначать обработчики сигналов для кнопок, меню-баров.

self.label = QtWidgets.QLabel("<center>Привет, я открылось</center>")
self.btn = QtWidgets.QPushButton("Закрыть меня")
self.vbox = QtWidgets.QVBoxLayout()
self.vbox.addWidget(self.label)
self.vbox.addWidget(self.btn)
self.setLayout(self.vbox)
self.btn.clicked.connect(QtWidgets.qApp.quit)

Для создания объекта приложения и открытия окна пропишем условие if:

if __name__ == "__main__":
app = QtWidgets.QApplication(sys.argv)
win = MyWin()
win.setWindowTitle("ООП стиль создания окна")
win.resize(350, 80)
win.show()
sys.exit(app.exec_())

Пример ООП программирования формы приложения
Пример ООП программирования формы приложения

Код программы можно скачать здесь.