Python — мощный язык программирования, используемый для веб-разработки, машинного обучения и создания программ с графическим интерфейсом. Библиотека Kivy позволяет разрабатывать кроссплатформенные приложения. В отличие от более простых библиотек, Kivy подходит для масштабных проектов.
Установка Kivy
Для установки Kivy необходим Python версии 3.7 (рекомендуется) и менеджер пакетов pip. Установите Python 3.7 и выполните в терминале команду: pip install kivy. В качестве среды разработки подойдёт любая IDE (например, PyCharm).
Простое приложение
Импортируем основной класс Kivy и необходимый виджет:
from kivy.app import App
from kivy.uix.label import Label
Создадим класс, наследующий от App, и реализуем метод build():
class MyApp(App):
def build(self):
label = Label(text="Hello, Kivy!")
return label
Запустим приложение, вызвав метод run():
if __name__ == '__main__':
MyApp().run()
Это создаст приложение с текстовой надписью. Параметры окна (размер, цвет) настраиваются с помощью Window:
from kivy.core.window import Window
Window.clearcolor = (1, 0, 0, 1) # Красный цвет
Window.size = (400, 300)
Window.title = "My Kivy App"
Приложение с кнопкой
Для более сложных интерфейсов используем BoxLayout для группировки виджетов:
from kivy.uix.button import Button
from kivy.uix.boxlayout import BoxLayout
import random
Создадим кнопку и добавим её в BoxLayout с текстовой надписью. Обработчик события on_press изменит цвет текста при нажатии:
class MyApp(App):
def build(self):
layout = BoxLayout(orientation='vertical')
self.button = Button(text="Нажми меня!") # создаем кнопку внутри конструктора
self.label = Label(text="Текст") # создаем label внутри конструктора
self.button.bind(on_press=self.button_press)
layout.add_widget(self.label)
layout.add_widget(self.button)
return layout
def button_press(self, instance):
self.label.color = (random.random(), random.random(), random.random(), 1)
Конвертер величин
Создадим приложение-конвертер с текстовыми полями для ввода и вывода, обработчиком событий для поля ввода и логикой конвертации. Необходимо предусмотреть обработку ошибок (например, нечислового ввода).
Kivy позволяет создавать функциональные и привлекательные приложения на Python. Базовые принципы работы с виджетами и обработчиками событий позволяют создавать полноценные проекты.