如何使用kivy访问课程?

时间:2019-04-29 16:31:42

标签: python kivy-language

如何使用on_release通过kivy访问python代码中的类?例如,我使用的是根函数。 root.function()和一堂课?

on_release: # What to put here to access the function `chama`?

class Tela(ScreenManager):
    pass
class teste(Screen):
    def chama(self):
        pass
    def save_d(self):

class Prg(App):
    def build(self):
        return Tela()

Prg().run()

1 个答案:

答案 0 :(得分:0)

如果使用kv(文件或字符串),则访问其他类的一种好方法是使用id。 这是一个示例:

main.py

from kivy.app import App
from kivy.lang import Builder
from kivy.uix.screenmanager import ScreenManager, Screen
from kivy.lang import Builder


class Tela(ScreenManager):
    pass

class Teste(Screen):
    def chama(self):
        print ('Hello')

class Teste2(Screen):
    pass

class PrgApp(App):
    def build(self):
        return Builder.load_file('Prg.kv')

PrgApp().run()

Prg.kv:

Tela
    Teste2
        Button
            on_release: t.chama()

    Teste
        id: t

注意:窗口小部件类的首字母必须大写,否则会出现语法错误