2014-09-14 2 views
0

У меня есть проблемы с запуском кусок кода для on_press события здесь мой код:Обработка kivy событие внутри питона кода

MAIN.py

#!/usr/bin/python3.4 



import kivy 
kivy.require('1.0.7') 



from kivy.app import App 
from kivy.uix.button import Button 

class helloworldApp(App): 
    def action(self): 
     print('Hi') 




app=helloworldApp() 
app.run() 

helloworld.kv

BoxLayout: 
    orientation:'vertical' 
    Button: 
     text: "Hello world" 
     id: btn1 
     on_press: action() 
    Button: 
     text: "Hello world" 
    Button: 
     text: "Hello world" 
    Button: 
     text: "Love you world" 

Когда я запускаю его, все выглядит нормально, но когда я нажимаю первую кнопку, я получаю

Файл "/home/user/Kivy/helloworld.kv", строка 6, в on_press: действие() NameError: название 'действие' не определен

Я попытался с root.action() и self.action() но Ждут» t work

ответ

1

Вы определили action как метод класса App, а не виджет, поэтому вы можете назвать его app.action() в kv.

app - ключевое слово kv, которое разрешает текущий исполняемый экземпляр приложения.

+0

Большое вам спасибо. –

Смежные вопросы