Рубрики

Python | Создание виджета Box Layout с использованием файла .kv

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

Теперь в этой статье мы узнаем об использовании виджета макета Box в kivy с использованием файла .kv и о том, как добавить в него некоторые функции, такие как цвет, размер и т. Д.

BoxLayout:
Kivy предлагает несколько макетов для хранения виджетов в нужных местах приложения. BoxLayout — это простая, но мощная компоновка, часто используемая либо вложенным способом, либо простым и понятным способом. BoxLayout упорядочивает виджеты либо по вертикали, расположенной один над другим, либо по горизонтали, расположенной один за другим. Если вы не предоставите подсказку о размере, то дочерние виджеты делят размер родительского виджета на равные или соответственно.

Basic Approach to follow while creating button :
1) import kivy
2) import kivyApp
3) import BoxLayout
4) set minimum version(optional)
5) Extend the class
6) set up .kv file (name same as the Appclass)
7) Return layout
8) Run an instance of the class

main.py файл BoxLayout —

# Базовый класс вашего приложения наследуется от класса приложения.
# app: всегда ссылается на экземпляр вашего приложения

from kivy.app import App 

    
# BoxLayout размещает детей в вертикальной или горизонтальной рамке.
# или помочь поставить детей в нужное место.

from kivy.uix.boxlayout import BoxLayout

  
###############################################

  
# создание корневого виджета, используемого в файле .kv

class KVBL(BoxLayout):

    «»»

        не нужно ничего делать здесь как

        мы строим вещи в файле .kv

    «»»

    pass

  
#################################################
# класс, в котором имя .kv файла должно называться KVBoxLayout.kv.

class KVBoxLayoutApp(App):  

        

    def build(self):

        # возвращает экземпляр класса KVBL

        return KVBL()

  
##################################################

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

root = KVBoxLayoutApp() 

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

KVBoxLayout.kv файл main.py файла

<KVBL>:
# вы можете изменить его на BoxLayout, но иметь
# менять везде, включая .py

  
################################################## ######

      

    # Чтобы разместить виджеты рядом друг с другом,

    # использовать горизонтальный BoxLayout.

    # Чтобы разместить виджеты выше / ниже друг друга,

    # использовать вертикальный BoxLayout.

  

    # ориентация: «горизонтальная»

  

    orientation: 'vertical'

      
################################################## #######

  

    # определение кнопок в формате макета блока

    # и добавление цвета, размера и т. д.

    # вы можете использовать соответственно

    Button:

        text: "Btn1"

        background_color: 0, 1, 1, 1

        font_size: 40

          

    Button:

        text: "Btn2"

        background_color: 0, 1, 0, 1

        font_size: 20

          

    Button:

        text: "Btn3"

        background_color: 0, 0, 1, 1

        font_size: 35

          

    Button:

        text: "Btn4"

        background_color: 1, 0, 1, 1

        font_size: 30

          

    Button:

        text: "Btn5"

        background_color: 1, 0, 0, 1

        font_size: 25

Выход:

1) Когда установлена ориентация по вертикали

2) Когда установлена ориентация по горизонтали

Ссылка:
https://kivy.org/doc/stable/api-kivy.uix.boxlayout.html

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

Python | Создание виджета Box Layout с использованием файла .kv

0.00 (0%) 0 votes