Ustawienie widgetu i rysowanie po nim

0

Hej,
zaczynam uczyć się pythona z wykorzystaniem biblioteki kivy. Mam jednak problem.

Chciałbym utworzyć widżet o ustalonym rozmiarze i tle. Będzie dodany jako pierwszy w BoxLayout. Chciałbym narysować linię wewnątrz tego widżetu, aby była widoczna tylko w nim i umieszczona względem niego. Podając (0,0) pozycję linii mam na myśli początek widżetu, a nie całe okno aplikacji. Jak osiągnąć ten efekt?

from random import random
from kivy.app import App
from kivy.graphics import Color, Ellipse, Line
from kivy.uix.button import Button
from kivy.uix.widget import Widget

class CombWidget(Widget):
    pass

class MyPaintWidget(Widget):
    def __init__(self, **kwargs):
        super(MyPaintWidget, self).__init__(**kwargs)

class MyPaintApp(App):
    def build(self):
        return CombWidget()

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

i plik kv:

<CombWidget>:
    BoxLayout:
        orientation: 'vertical'
        size: root.size
        padding: 20
        spacing: 50

        MyPaintWidget:
            size: 400, 400
            size_hint: 400, 400

            canvas.before:
                Color:
                    rgba: 1, 1, 1, 1
                Rectangle:
                    pos: self.pos
                    size: self.size

            canvas:
                Color:
                    rgba: 0, 0, 0, 1
                Line:
                    points: 0, 0, 200, 200


        Button:
            text: "Hallo"
        Button:
            text: "Hallo 1"
        Button:
            text: "Hallo 2"

Teraz mam coś takiego:
mam

A chciałbym takie coś:
chcialbym

Możecie mi pomóc poprawić ten kod? To jest zlepek z tutoriali ale nie mam pojęcia jak ruszyć dalej ;)

0

Rozwiązanie dla potomnych.
Wystarczy dodać drobną rzecz:

       canvas:
            Color:
                rgba: 0, 0, 0, 1
            Line:
                points: self.x, self.y, self.x + 200, self.y + 200

1 użytkowników online, w tym zalogowanych: 0, gości: 1