Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Python - Widget BoxLayout trong Kivy


Kivy cho phép tạo giao diện đa điểm chạm. Bài viết demo BoxLayout để tạo các nút (Button) với hướng (orientation) và màu sắc khác nhau.

Tạo box ngoài orientation vertical. Hàng 1 (Row1) orientation horizontal. Hai hàng khác orientation vertical. Gộp vào box ngoài, gán text và background_color cho các Button.

Ví dụ

import kivy
from kivy.app import App
from kivy.uix.button import Button
from kivy.uix.boxlayout import BoxLayout

class BoxLayoutApp(App):
    def build(self):
        # Box ngoài dọc
        outerBox = BoxLayout(orientation='vertical')
        # Hàng 1 ngang
        Row1 = BoxLayout(orientation='horizontal')
        btn1 = Button(text="One", background_normal='', background_color=(1, 0, 1, 1), font_size=25, size_hint=(0.7, 1))
        btn2 = Button(text="Two", background_normal='', background_color=(1, 1, 0, 0.8), font_size=25, size_hint=(0.7, 1))
        Row1.add_widget(btn1)
        Row1.add_widget(btn2)
        # Hàng 2, 3 dọc
        Row_2_3 = BoxLayout(orientation='vertical')
        btn3 = Button(text="Three", background_normal='', background_color=(1,0,0,0.75), font_size=25, size_hint=(1, 10))
        btn4 = Button(text="Four", background_normal='', background_color=(0,1,0,0.75), font_size=25, size_hint=(1, 15))
        Row_2_3.add_widget(btn3)
        Row_2_3.add_widget(btn4)
        # Gộp vào outerBox
        outerBox.add_widget(Row1)
        outerBox.add_widget(Row_2_3)
        return outerBox

if __name__ == '__main__':
    BoxLayoutApp().run()

Kết quả:

Đầu ra

Python - Widget BoxLayout trong Kivy