Читаем Создание настольных Python приложений с графическим интерфейсом пользователя полностью

Kivy — это многоплатформенная среда разработки приложений для Python, которая позволяет разрабатывать приложения для Windows, Linux, Android, macOS, iOS и Raspberry Pi.



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

Она также позволяет получать доступ к мобильным API-интерфейсам для управления такими вещами, как камера на телефоне, отслеживание GPS, вибратор и т. д.

Kivy включает в себя различные модули для воспроизведения видео файлов и потоков.

Kivy использует широкий спектр виджетов, поддерживающих мультитач и жесты.

Киви использует PyGame для простого создания игр.

И PyGame поставляется с различными модулями для рисования форм, работы с цветами и воспроизведения музыки.



Для разработки Киви приложения создадим проект в

PyCharm

и в окне терминала наберем команду установки Киви.



Далее мы можем запустить готовые примеры приложений Киви.



И мы можем сами теперь создавать Киви приложения.

Прежде всего мы должны импортировать kivy.

Теперь, чтобы создать интерфейс Kivy, нам нужно импортировать модуль приложения App.

Далее импортируем метку.

И определим класс с функцией, которая возвращает корневой виджет — метку.

Затем инициализируем класс и вызовем его метод run, запустив приложение Киви.

К метке мы также можем применить стиль, то есть увеличить текст, размер, цвет и многое другое.

Вы можете изменить стиль текста с помощью разметки текста Text Markup.



Упаковка Киви приложения в исполняемый файл для различных платформ достаточно сложная и не всегда обходится без сложностей и ошибок.

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



Виджет TextInput предоставляет поле для редактирования простого текста.

Этот виджет поддерживает Unicode, multiline, курсорную навигацию, выделение и буфер обмена.

И TextInput использует две разные системы координат — (x, y) — координаты в пикселях, в основном используются для рендеринга на экране и (col, row) — индекс курсора в символах / строках, используемый для выделения и перемещения курсора.

Чтобы создать однострочный текстовый ввод, можно установить для свойства TextInput.multiline значение False.

Здесь параметр size_hint — это набор значений, используемых макетами для управления размерами своих дочерних элементов. Он указывает размер относительно размера макета, а не абсолютный размер в пикселях.

Если вы не хотите использовать size_hint для ширины или для высоты, установите значение параметра None.

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

Компоновка BoxLayout размещает виджеты вертикально один над другим или горизонтально один за другим.

И методом bind мы связываем значения двух виджетов — метки и поля ввода.



Виджет CheckBox — это особая кнопка с двумя состояниями, которую можно установить или снять.

Если флажок находится в группе, он становится переключателем, в этом случае одновременно можно выбрать только одну кнопку.

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

Затем с помощью метода bind мы связываем с флажком функцию, которая обрабатывает выбор флажка.

В результате при выборе флажка изменяется свойство active класса, которое связано с меткой.



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

В отличие от других наборов, список виджетов может содержать виджет любого типа: простые кнопки, изображения и т. д.

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

И все кнопки в раскрывающемся списке будут запускать метод DropDown.select().

После его вызова текст основной кнопки будет отображать выбор из раскрывающегося списка.

Здесь в этом примере мы создаем раскрывающийся список DropDown и добавляем в него кнопки методом add_widge.

При этом мы связываем с кнопками метод dropdown.select, передавая в него текст кнопки.

Далее мы создаем виджет — кнопку и связываем с ней метод dropdown.open.

Таким образом, при нажатии кнопки список раскрывается.

И в этом примере мы запускаем приложение с помощью метода runTouchApp.

Это статическая функция, запускающая цикл приложения.

Если вы передадите в runtouchApp виджет, будет создано окно, и виджет будет добавлен в это окно как корневой виджет.



Виджет ScrollView предоставляет прокручиваемое окно просмотра.

И ScrollView принимает только один дочерний элемент и применяет к нему прокрутку в соответствии со свойствами scroll_x и scroll_y.

По умолчанию ScrollView позволяет прокручивать по осям X и Y.

Вы можете явно отключить прокрутку по оси, установив для свойств do_scroll_x или do_scroll_y значение False.

И вы должны тщательно указать размер вашего контента, чтобы получить желаемый эффект прокрутки.

Перейти на страницу:

Похожие книги

Основы информатики: Учебник для вузов
Основы информатики: Учебник для вузов

Учебник состоит из двух разделов: теоретического и практического. В теоретической части учебника изложены основы современной информатики как комплексной научно-технической дисциплины, включающей изучение структуры и общих свойств информации и информационных процессов, общих принципов построения вычислительных устройств, рассмотрены вопросы организации и функционирования информационно-вычислительных сетей, компьютерной безопасности, представлены ключевые понятия алгоритмизации и программирования, баз данных и СУБД. Для контроля полученных теоретических знаний предлагаются вопросы для самопроверки и тесты. Практическая часть освещает алгоритмы основных действий при работе с текстовым процессором Microsoft Word, табличным редактором Microsoft Excel, программой для создания презентаций Microsoft Power Point, программами-архиваторами и антивирусными программами. В качестве закрепления пройденного практического курса в конце каждого раздела предлагается выполнить самостоятельную работу.

Вадим Васильевич Лысенко , Лариса Александровна Малинина , Максим Анатольевич Беляев

Зарубежная компьютерная, околокомпьютерная литература / Прочая компьютерная литература / Книги по IT
Цифровой журнал «Компьютерра» № 24
Цифровой журнал «Компьютерра» № 24

ОглавлениеБольшие новостиMicrosoft BizSpark: поиски инвесторов и менторов Автор: Григорий РудницкийNASA открыло виртуальную лунную базу Автор: Михаил КарповТерралабПромзона: Катушка с лупой Автор: Николай МаслухинPixel Qi: дисплеи, не слепнущие на солнце Автор: Юрий ИльинПромзона: Батарейки Microsoft Автор: Николай МаслухинСофт: Process Explorer — порнобаннер в прицеле Автор: Николай МаслухинSynaptics: тачпады нового поколения Автор: Олег НечайПромзона: Очки-суфлер Автор: Николай МаслухинМобильный интернет для малого бизнеса Автор: Максим БукинВещь дня: беззеркальная камера Lumix G2 Автор: Андрей ПисьменныйHDBaseT 1.0: дешёвая замена HDMI Автор: Олег НечайПромзона: Воздушный холодильник Автор: Николай МаслухинСофт: Настраиваем Ubuntu с помощью Ubuntu Tweak Автор: Крестников ЕвгенийПромзона: Бескрайний бассейн Автор: Николай МаслухинСпособы обмана в мобильных сетях Автор: Максим БукинСвоя играВасилий Щепетнёв: О пользе словаря Автор: Василий ЩепетневКивино гнездо: Человек против обмана Автор: Берд КивиMicrosoft: что пошло не так Автор: Андрей ПисьменныйКафедра Ваннаха: Скольжение к сингулярности Автор: Ваннах МихаилВасилий Щепетнёв: Гамбит Форт-Росс Автор: Василий ЩепетневКафедра Ваннаха: Облачное программирование и Пуэрто-Рико Автор: Ваннах МихаилВасилий Щепетнёв: Следы на целлулоиде Автор: Василий ЩепетневКивино гнездо: Конфликт криптографии и бюрократии Автор: Берд КивиИнтерактивЛюдмила Булавкина, директор YouDo по маркетингу, о любительском контенте Автор: Юрий ИльинМакс Зацепин и Глеб Никитин о музыкальной игре для iPad Автор: Юрий ИльинСергей Матиясевич (3D Bank) о рынке трёхмерных моделей Автор: Юрий ИльинВ. Репин (ИХБФМ СО РАН) о бактерии из вечной мерзлоты Автор: Алла АршиноваДмитрий Завалишин об операционной системе «Фантом» Автор: Андрей ПисьменныйБлогиАнатолий Вассерман: «Марс-500» Автор: Анатолий ВассерманКак большой оператор споткнулся о маленького SaaS-провайдера Автор: Анисимов КонстантинАнатолий Вассерман: Дальневосточные «партизаны» Автор: Анатолий ВассерманГолубятня-ОнлайнГолубятня: Сидр №4 Автор: Сергей ГолубицкийГолубятня: Бедность Автор: Сергей Голубицкий

Журнал «Компьютерра»

Зарубежная компьютерная, околокомпьютерная литература
Внедрение SAP R/3: Руководство для менеджеров и инженеров
Внедрение SAP R/3: Руководство для менеджеров и инженеров

Это практическое всеобъемлющие руководство было написано специально для тех, кто выбирает стратегию внедрения SAP в организации. «Внедрение SAP R/3: руководство для менеджеров и инженеров» объясняет, что означает понятие «эпоха ERP», почему информация является одним из ключевых ресурсов предприятия, как SAP способствует росту конкурентоспособности компании, а также преимущества методологии ASAP в планировании и использовании ресурсов при внедрении SAP. Подход к ERP-системам, используемый в данной книге, будет крайне полезен менеджерам и специалистам, которым необходимо представить высшему руководству своих компаний основания для внедрения SAP; кроме того, данная книга будет весьма полезной тем, кто занимается проектами SAP или планирует такой проект в ближайшем будущем. Для тех читателей, кто непосредственно занят в проектах SAP, эта книга станет надежным руководством и поможет внести существенный вклад в развитие проекта.

Вивек Кале

Зарубежная компьютерная, околокомпьютерная литература / Прочая компьютерная литература / Книги по IT