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

Создание оконного приложения на Python.

Для создания оконного приложения на Python используются библиотеки Tkinter и PyQt. Мы будем использовать библиотеку PyQt. Эта библиотека более сложная чем Tkinter , но в тоже время при большей сложности у нее больше возможностей.

Создавать окно можно несколькими способами:

  1. Ручной ввод линейного кода приложения
  2. Ручной ввод кода через ООП-стиль написания кода
  3. Создание окна с помощью программы Qt Designer и использования ui файла.
  4. Создание окна с помощью программы Qt Designer и преобразования ui файла в py файл.

В той статье создадим приложение первым способом.

Для начала необходимо подключить необходимые библиотеки:

from PyQt5 import QtWidgets
import sys

Создаём объект приложения в виде экземпляра класса QApplication.

app = QtWidgets.QApplication(sys.argv)

Создаем объект окна в виде экземпляра класса QWidget

win = QtWidgets.QWidget()

Задаём текст для заголовка окна через метод setWindowTitle

win.setWindowTitle("Моё первое окно на PyQt")

Через метод resize задаём минимальные размеры окна

win.resize(350, 70)

В первом параметре размера задаётся ширина окна, во втором параметре его высота. При этом эти размеры являются рекомендуемые и если компоненты окна не помещаются в эти размеры, то оно будет автоматически увеличено.

Далле создадим два компонента окна - надпись (Label), кнопку (PushButton) и вертикальный контейнер (VBoxLayout).

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

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

vbox.addWidget(label)
vbox.addWidget(btn)

Добавляем контейнер в основное окно с помощью метода setLayout.

win.setLayout(vbox)

Назначаем обработчик сигнала кнопки clicked() при её нажатии.

btn.clicked.connect(app.quit)

Обработчик выполняет немедленное завершение работы через метод quit()

Выводим на экран окно и все его компоненты через метод show()

win.show()

Последней строкой запускаем бесконечный цикл обработки событий в приложении.

sys.exit(app.exec_())

Весь код, который будет написан после этой строки, будет выполнен после завершения приложения.

Скрипт создания оконного приложения
Скрипт создания оконного приложения

Этот код можно скачать здесь.

Наука
7 млн интересуются