Читать книгу Разработка кроссплатформенных мобильных и настольных приложений на Python. Практическое пособие - Анатолий Постолит - Страница 34
Глава 2. Фреймоворк Kivy, язык KV и виджеты, как основа пользовательского интерфейса
2.5.5. Виджет Slider – слайдер (бегунок)
ОглавлениеВиджет Slider (слайдер) это бегунок, который поддерживает горизонтальную и вертикальную ориентацию и используется в качестве полосы прокрутки. Покажем на простом примере, как можно использовать виджет Slider в приложении. Для этого создадим файл с именем K_Slider_1.py и напишем в нем следующий код (листинг 2.27).
Листинг 2.27. Пример использования виджета Slider (модуль K_Slider_1.py)
# модуль K_Slider_1.py
from kivy. app import App
from kivy.uix.slider import Slider
class MainApp (App):
…… def build (self):
…… … … slide = Slider (orientation=’vertical’,
…… … … value_track=True,
…… … … value_track_color= (1, 0, 0, 1))
…… … … return slide
MainApp().run ()
В этом модуле мы создали объект-бегунок slide на основе базового класса Slider. Для бегунка задали следующие свойства:
– orientation=’vertical’ – вертикальная ориентация;
– value_track=True – показать след бегунка;
– value_track_color= (1, 0, 0, 1) – задан цвет следа бегунка (красный).
После запуска данного приложения получим следующий результат (рис.2.21).
Рис. 2.21. Результаты выполнения приложения из модуля K_Slider_1.py (при вертикальном расположении бегунка)
В данном примере объект Slider был создан в коде на языке Python. А сейчас реализуем тот же пример с использованием языка KV. Для этого создадим файл с именем K_Slider_2.py и напишем в нем следующий код (листинг 2.28).
Листинг 2.28. Пример использования виджета Slider (модуль K_Slider_2.py)
# модуль K_Slider_2.py
from kivy. app import App
from kivy.lang import Builder
KV = «»»
Slider:
…… orientation: ’horizontal’
…… value_track: True
…… value_track_color: 1, 0, 0, 1
«»»
class MainApp (App):
…… def build (self):
…… …… return Builder. load_string (KV)
MainApp().run ()
В данном примере объект Slider был создан в коде на языке KV, и было изменено одно свойство – ориентация. В данном коде задана горизонтальная ориентация бегунка. После запуска данного приложения получим следующий результат (рис.2.22).
Рис. 2.22. Результаты выполнения приложения из модуля K_Slider_2.py (при горизонтальном расположении бегунка)
Бегунок Slider имеет ряд свойств, которые позволяют задать некоторые параметры, запустить реакцию на события или изменение состояния:
– min – минимальное значение (например – 0);
– max – максимальное значение (например – 500);
– value – текущее (начальное) значение (например – 50);
– step – шаг изменения значения (например – 1);
– value_track_color – цвет следа бегунка (в формате r, g, b, a);
– value_track – показывать след бегунка (True – да, False – нет)
– orientation – ориентация бегунка (’vertical’ – вертикальная, ’horizontal’ – горизонтальная);
– on_touch_down – событие (касание бегунка);
– on_touch_up – событие (бегунок отпущен);
– on_touch_move – событие (касание бегунка с перемещением).