2023年8月19日 星期六

Kivy UIX篇 widget篇 CheckBox類 method篇 講解

若尚未看過Kivy UIX篇 widget篇 CheckBox類 attribute篇 講解,建議看完之後對CheckBox有一定了解在看這篇喔。

根據官網CheckBox類繼承自kivy.uix.behaviors.togglebutton.ToggleButtonBehavior與 kivy.uix.widget.Widget,因此CheckBox的method皆來自於此。

在官網中介紹CheckBox的頁面中沒有提到CheckBox類別有專用的method,所以這邊就意思意思呈現一個範例,詳細的可以參考Kivy UIX篇 widget篇 widget類 method篇 講解,基本上是通用的。

這邊主要呈現CheckBox在有無被選取時如何影響其他widget,我想這也是CheckBox的主要目的。

首先在main.py中寫下程式碼:

from kivy.app import App
from kivy.uix.floatlayout import FloatLayout


class MyLayout(FloatLayout):
    pass


class Myapp(App):

    def build(self):
        return MyLayout()


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

在my.kv中寫上此段程式碼:

<MyLayout>:

    a1: b1
    a2: b2

    CheckBox:
        id: b1
        pos_hint: {'x':.0,'y':.0}
        size_hint: None, None
        size: 200,200
        active: True

    Label:
        id: b2
        text: 'hello' if b1.active else 'world'
        pos_hint: {'x':.1,'y':.1}
        size_hint: None, None
        size: 200,200

執行結果如下:


沒有留言:

張貼留言

精選文章

Kivy UIX篇 widget篇 TabbedPanel類 event篇 講解