45

Как научиться писать на PyQt?

Приветствую падаван. Сегодня я тебе поведую как легко написать свою первую программу на PyQT.

Что нам для этого понадобиться?
1.Python
2.PyQt
3.Огромное желание

Первая команда в терминале!

pip install PyQt5


После того, как у вас успешно (я на это надеюсь) установился и питон и PyQt, мы можем продолжить работу над нашим первым приложением.

Забыл упомянуть, что приложения на pyqt будут работать как на Mac, так и на Windows, и на Линуксе тоже ничего не будет ломаться.


Начинаем!

Для начало сделаем импорт sys, а также QApplication, QLabel и QMainWindow

Как научиться писать на PyQt? Python, Qt, Qt5, Программирование, Программист, Длиннопост

В PyQt.Widgets хранятся все кнопочки, стрелочки, поля ввода и т.д.

QApplication — наше приложение.Если не будет этого компонента приложение не заработает.
QLabel — это надпись, скоро мы добавим её в наше приложение. Круто, не правда ли?
QMainWindow — главное окно нашего приложение (аналог QWidget, но окон типа QWidget может быть 10 и более в программе, а QMainWindow только одно)

Теперь создадим класс и запустим наше приложение.

Как научиться писать на PyQt? Python, Qt, Qt5, Программирование, Программист, Длиннопост

Мы создали класс Example, он наследуется от нашего QMainWindow, который инициализируется с помощью super().__init__()

Далее мы просто запускаем приложение и показываем его методом show()

Вот что у нас получилось!

Как научиться писать на PyQt? Python, Qt, Qt5, Программирование, Программист, Длиннопост

Выглядит скучновато? Сейчас исправим!

Как научиться писать на PyQt? Python, Qt, Qt5, Программирование, Программист, Длиннопост

Уху, это успех. Мы вставили первый текст. А вот и код! Он легкий и я сделал в коде комментарии, так что не буду отдельно останавливаться на каждой запятой.

Как научиться писать на PyQt? Python, Qt, Qt5, Программирование, Программист, Длиннопост

«Это конечно хорошо» — скажите вы мне — "а где кнопки?".

Ок, сейчас мы сделаем кнопку!

Как научиться писать на PyQt? Python, Qt, Qt5, Программирование, Программист, Длиннопост

Хотя наша кнопка пока ничего не умеет, но программа обрела новые краски. Пользователям стало чем заняться!

Сделаем из нашем программы свой сектор приз, который будет при выпадении 10 очков писать на кнопке что мы виграли, если выпало меньше 10 очков, то проиграли.

В начале программы сделаем импорт choice.

Как научиться писать на PyQt? Python, Qt, Qt5, Программирование, Программист, Длиннопост

А вот код самой кнопки.

Как научиться писать на PyQt? Python, Qt, Qt5, Программирование, Программист, Длиннопост

self.btn.clicked.connect(self.text_shuffle) — событие при клике кнопки.
self.btn.adjustSize() — весь текст кнопки будет вмещаться и не будет вылезать за края.

Весь код с комментариями вы можете посмотреть на моем GitHub

Программирование на python

879 постов11.9K подписчика

Правила сообщества

Публиковать могут пользователи с любым рейтингом. Однако!


Приветствуется:

• уважение к читателям и авторам

• конструктивность комментариев

• простота и информативность повествования

• тег python2 или python3, если актуально

• код публиковать в виде цитаты, либо ссылкой на специализированный сайт


Не рекомендуется:

• допускать оскорбления и провокации

• распространять вредоносное ПО

• просить решить вашу полноценную задачу за вас

• нарушать правила Пикабу