Я хочу определить виджет, используя язык kivy, но затем я хочу добавить функции в класс. Ниже приведена моя наивная попытка, которая терпит неудачу, когда я нажимаю кнопку с сообщением «AttributeError: объект 'MyButton' не имеет атрибута 'second_pressed'»
Как мне сделать класс с функциями и определенным языком kivy?
import sys
from kivy.app import App
from kivy.lang import Builder
from kivy.uix.boxlayout import BoxLayout
root = Builder.load_string('''
BoxLayout:
Label:
text: 'hello'
MyButton:
<MyButton@Button>:
text: 'Second button'
on_press: self.second_pressed()
''')
class MyButton():
def second_pressed():
print "second pressed"
sys.stdout.flush()
class Tryit(App):
def build(self):
return root
if __name__ == '__main__':
Tryit().run()