widget

Widget

class kivy.uix.widget.Widget
class PainterWidget(Widget):

    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)

        with self.canvas:
            Color(0, 1, 0, 1)
            Ellipse(pos=(100, 100), size=(50, 50))
children

list

export_to_png()
on_touch_down(touch)
on_touch_move(touch)
walk(restrict=False, loopback=False)
GridLayout:
    Button
    BoxLayout:
        id: box
        Widget
        Button
    Widget
[type(widget) for widget in box.walk(loopback=True)]
# [<class 'BoxLayout'>, <class 'Widget'>, <class 'Button'>,
#    <class 'Widget'>, <class 'GridLayout'>, <class 'Button'>]

[type(widget) for widget in box.walk()]
# [<class 'BoxLayout'>, <class 'Widget'>, <class 'Button'>,
#    <class 'Widget'>]

[type(widget) for widget in box.walk(restrict=True)]
# [<class 'BoxLayout'>, <class 'Widget'>, <class 'Button'>]
walk_reverse(loopback=False)
GridLayout:
    Button
    BoxLayout:
        id: box
        Widget
        Button
    Widget
[type(widget) for widget in box.walk_reverse(loopback=True)]
# [<class 'Button'>, <class 'GridLayout'>, <class 'Widget'>,
#    <class 'Button'>, <class 'Widget'>, <class 'BoxLayout'>]

[type(widget) for widget in box.walk_reverse()]
# [<class 'Button'>, <class 'GridLayout'>]