Kivy это библиотека Python с открытым исходным кодом для графического пользовательского интерфейса, которая позволяет разрабатывать многоплатформенные приложения для Windows, macOS, Android, iOS, Linux и Raspberry-Pi. Помимо обычного ввода с помощью мыши и клавиатуры, он также поддерживает мультитач события. Приложения, созданные с использованием Kivy, будут одинаковыми на всех платформах.
Перед установкой Kivy необходимо предварительно обновить pip. Установка: Создайте и активируйте виртуальную среду с именем kivy_venv в вашем текущем каталоге. Устанавливаем библиотеку через командную строку (документация по установке):
python -m pip install "kivy[base]" kivy_examples
Основы Kivy
Виджеты это отображаемые на экране элементы управления, к которым обращается пользователь. Примерами виджетов являются кнопки, выпадающие списки и вкладки. Библиотека Kivy предоставляет много встроенных виджетов.
Для каждого приложения Kivy необходимо создать подкласс App и переопределить метод build(). В этот класс входият код UI (код разметки и дизайна формы), или вызываете другие функции, которые определяют код UI. В данном примере создается объект Label со следующими параметрами text, size_hint и pos_hint. Последние два аргумента не обязательны.
Запуск программы осуществляется путем инициализации класса MainApp и вызова метода run().
Разметка в Kivy.
Для размещения компоновки виджетов на форме в Kivy используют Layouts. Доступны следующие типы Layouts: BoxLayout, FloatLayout, GridLayout, RelativeLayout, ScatterLayout и др.
Импортируем модуль BoxLayout из kivy.uix.boxlayout. С помощью цикла формируем и размещаем кнопки. Методом padding устанавливаем отступы между Layouts и его дочерними элементами.
Событие для кнопки
В данном коде вызывается button.bind(), а событие on_press ссылается на MainApp.on_press_button().
Поля ввода
Виджет TextInput предоставляет поле для редактирования простого текста. Поддерживаются Unicode, Multiline, курсор навигации, выбор и функции буфера обмена. Чтобы создать однострочный TextInput, установите для свойства TextInput.multiline значение False.
Напишем скрипт в который мы вводим имя и она с нами здоровалась. Считывание текста с текстового поля осуществляется методом text, запись текста в текстовую метку Label осуществляется методом text.
Используем Kivy для создании макета калькулятора. Импортируем необходимые модули. Создаем список с элементами (названиями кнопок). Создаем внешний вертикальный BoxLayout. Создаем текстовое поле для отображения действий и результатов вычислений. Циклом идем по списку, создаем горизонтальные BoxLayout и размещаем в них кнопки. Вкладываем горизонтальные BoxLayout в вертикальный BoxLayout
При запуске данного кода приложение будет выглядеть следующим образом.
Kivy является современной кроссплатформенной библиотекой для создания GUI, что можно использовать при создании пользовательских интерфейсов для мобильных приложений и персональных ПК. Преимуществом библиотеки является поддержка событий мультитач, большое количество виджетов.
В данном статье мы рассмотрели основы работы Kivy. Теперь вы можете создавать приложения с современным и красивым дизайном.
С уважением, Карян Армен.
Занимаюсь профессиональной разработкой прикладных программ на Python.
email SoftSAR@yandex.ru
Telegram @SoftSar_am