49

Создаем планировщик на PyQt

Это второй пост по PyQt, Если вы хотите легче вникнуть в происходящие, то можете посмотреть первый пост.
Также весь код находится на моем GitHub

Сегодня мы создадим удобный планировщик, который будет фильтровать задачи по дате и представлять их в удобном нам виде. Примерный вид планировщика:

Для начало установим и откроем откроем редактор Qt Designer.

После открытия дизайнера, вам высветится диалоговое окно и предложит вам выбрать один из предложенных вариантов.

Что такое диалоговое окно и когда оно используется я вам расскажу в последующих статьях, а сейчас мы выбираем Main Window, потому что Main Window - это главное окно приложение ( об этом я подробнее рассказывал в предыдущей статье ).

Далее нажимаем кнопку "Создать". После нажатия мы увидим большое пустое окно с меню.

Меню нам сейчас не понадобится, значит надо его удалить! Кликаем правой кнопкой мыши на белое пространство и выбираем пункт "Удалить панель меню"

Добавим календарь ( самый главный элемент в нашем приложении ). Виджет называется Сalendar Widget.

Сейчас будем добавлять кнопку, поле для просмотра задач, а также добавим виджет Time Edit.

Дизайн почти готов, осталось сделать форму адаптивной и нормально разместить элементы.

Перетащим Vertical Layout в окно и на Vertical Layout перетащим Text Browser и кнопку.

Также добавим Line Edit.

Далее находим в инспекторе объектов centralwidget и компонуем объекты в грид сетку.

Далее сохраняем нашу форму в папке calendar ( папка, как и сам файл можно называть по разному ).

Дело за малым. Нам осталось написать само добавление задач.

Открываем папку с проектом и в консоль вводим магическую команду, которая превратит ваш ui файл в python файл. После -x идет название вашего ui файла, а после -o идет название python файла, в который вы хотите поместить ui компоненты.

Если вы все правильно сделали, то у вас должен появиться новый файл, если вы его запустите, то должно появиться то окно, которое мы делали с вами в редакторе.

Но мы не будем писать код нашей программы в этом файле ( это считается плохой практикой ). Вместо этого мы создадим новый файл, в который запихнем наш qt.py

Далее мы создадим словарь для легкой фильтрации. После чего наш initUi будет выглядеть так.

И наконец функция find_date, которая будет составлять главную часть нашей программы. В ней будят производится все вычисления.

Если вы запустите свою программу она должна работать.

Дз:
1. Поменять фон
2. Поменять цвет кнопки
3. отправить изменения мне на GitHub для проверки.

Ссылка на все файлы - https://github.com/l-arkadiy-l/PYQT-EXAMPLES/tree/main/lessons/calendar

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

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


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

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

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

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

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

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


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

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

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

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

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

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества