Рубрики

Python | Виджет слайдера в Кивах

Kivy — это независимый от платформы инструмент GUI в Python. Так как он может быть запущен на Android, IOS, Linux, Windows и т. Д. Он в основном используется для разработки приложения Android, но это не означает, что его нельзя использовать в приложениях для настольных ПК.

Slider:
Для работы со слайдером сначала необходимо импортировать модуль, который состоит из всех функций, функций слайдера, т.е.

Module: kivy.uix.slider

Виджет «Слайдер» выглядит так же, как мы используем в Android для увеличения яркости, громкости и т. Д. Он поддерживает горизонтальную и вертикальную ориентации, минимальные и максимальные значения и значение по умолчанию. Kivy поддерживает несколько вариантов виджетов слайдера для настройки курсора, изображения курсора, границы, фона, которые будут использоваться в разных ориентациях, области между минимальным значением и максимальным значением.
Kivy также поддерживает работу с нормализованным значением (диапазон от 0 до 1), а не с реальными диапазонами, поддерживаемыми ползунком.

Basic Approach to follow while creating Slider :

1) import kivy
2) import kivy App
3) import gridlayout(not compulsory according to need)
4) import Label(not compulsory according to need)
5) import Slider
6) import Numeric property
7) set minimum version(optional)
8) Extend the class
9) Add and return a widget
10) Run an instance of the class

Ниже приведен код реализации слайдера:

# импорт кивый модуль

import kivy 

    
# это ограничивает kivy версию т.е.
# ниже этой версии вы не можете
# использовать приложение или программное обеспечение

kivy.require("1.9.1")

  
# Kivy Пример приложения для виджета-слайдера

from kivy.app import App

  
# GridLayout упорядочивает детей в матрице.

from kivy.uix.gridlayout import GridLayout

  
# Если мы не будем импортировать этот модуль
# Будет через ошибку

from kivy.uix.slider import Slider

  
# Виджет «Метка» предназначен для визуализации текста.

from kivy.uix.label import Label

  
# Свойство, представляющее числовое значение
# в пределах минимальной границы и / или максимальной
# bound - в пределах числового диапазона.

from kivy.properties  import NumericProperty

  
# класс, в котором мы определяем
# ползунки и их эффекты

class WidgetContainer(GridLayout):

  

    def __init__(self, **kwargs):

          

        # супер функция может быть использована для получения доступа

        # к унаследованным методам от родителя или родного брата

        # класс, который был перезаписан в объекте класса.

        super(WidgetContainer, self).__init__(**kwargs)

  

        # 4 столбца в сетке

        self.cols = 4

          

        # объявление слайдера и добавление к нему некоторых эффектов

        self.brightnessControl = Slider(min = 0, max = 100)

           

  

        # 1-й ряд - одна метка, один слайдер

        self.add_widget(Label(text ='brightness'))

        self.add_widget(self.brightnessControl) 

  

        # 2-й ряд - одна метка для подписи,

        # одна метка для значения слайдера

        self.add_widget(Label(text ='Slider Value'))

        self.brightnessValue = Label(text ='0')

        self.add_widget(self.brightnessValue)

  

  

        # На объекте слайдер Прикрепить обратный вызов

        # для атрибута с именем value

        self.brightnessControl.bind(value = self.on_value)

         

    # Добавление функциональности за слайдером

    # т.е. при нажатии увеличить значение

    def on_value(self, instance, brightness):

        self.brightnessValue.text = "% d"% brightness

  

  
# Класс приложения

class SliderExample(App):

    def build(self):

        widgetContainer = WidgetContainer()

        return widgetContainer

   

  
# создание корня объекта для класса ButtonApp ()

root = SliderExample()

    
# run функция запускает всю программу
# т.е. метод run (), который вызывает
# целевая функция передается конструктору.
root.run() 

Выход:

Чтобы добавить немного стиля и цвета в слайдер, просто замените строку № 42 на приведенную ниже и добавьте некоторые новые функции, если хотите. Для текста стиль использует правильные команды в текстовой части.

# объявление слайдера и добавление к нему некоторых эффектов
# По умолчанию его ориентация горизонтальна
# если хотите сменить на вертикальную сделайте как ниже

        self.brightnessControl = Slider(min = 0, max = 100

                                        orientation ='vertical',

                                        value_track = True

                                        value_track_color =[1, 0, 0, 1])

Выход:

Видео, чтобы объяснить, как работает слайдер —

Рекомендуемые посты:

Python | Виджет слайдера в Кивах

0.00 (0%) 0 votes