На этом шаге мы рассмотрим первую программу.
При изучении языков и технологий принято начинать с программы, выводящей надпись "Привет, мир!". Не станем нарушать традицию и создадим окно с приветствием и кнопкой для закрытия окна.
# -*- coding: utf-8 -*- from PyQt5 import QtWidgets import sys app = QtWidgets.QApplication(sys.argv) window = QtWidgets.QWidget() window.setWindowTitle("Первая программа на PyQt") window.resize(300, 70) label = QtWidgets.QLabel ("<center>Привет, мир!</center>") btnQuit = QtWidgets.QPushButton("&Закрыть окно") vbox = QtWidgets.QVBoxLayout() vbox.addWidget(label) vbox.addWidget(btnQuit) window.setLayout(vbox) btnQuit.clicked.connect(app.quit) window.show() sys.exit(app.exec_())
Результат работы приложения приведен на рисунке 1.
Рис.1. Результат работы приложения
Для создания файла с программой можно по-прежнему пользоваться редактором IDLE. Однако запуск оконного приложения из IDLE нажатием клавиши F5 приводит к очень неприятным ошибкам (в частности, при завершении программы ее главное окно остается на экране) и даже аварийному завершению работы редактора. Поэтому запускать оконные приложения следует двойным щелчком на значке файла.
До сих пор мы создавали файлы с расширением ру и все результаты выполнения программы выводили в консоль. Оконное приложение также можно сохранить с расширением ру, но тогда при его запуске, помимо основного окна, будет дополнительно выводиться окно консоли, что на этапе разработки дает возможность выводить в консоль отладочную информацию (таким способом мы будем пользоваться в дальнейших примерах). Чтобы избавиться от окна консоли, следует сохранять файл с расширением pyw.
Попробуйте создать два файла с различными расширениями и запустить двойным щелчком каждое из них.
На следующем шаге мы рассмотрим более подробно эту программу.