2016-04-05 25 views
1

これはかなり単純な問題のようですが、私はそれを理解できません。私はPython 2.7でKivyを使用しています。 NewFunction()関数をビルド(self)から呼び出すにはどうすればよいですか?Kivyアプリ内で別の機能を呼び出していますか?

from kivy.core.window import Window 
Window.clearcolor = (1, 1, 1, 1) 
from kivy.app import App 
from kivy.uix.button import Button 
from kivy.uix.label import Label 
from kivy.uix.anchorlayout import AnchorLayout 


class TestApp(App): 

    def build(self): 
     anchor_layout = AnchorLayout(anchor_x='center', anchor_y='top') 
     lblInitiate = Label(text='[color=1f358e][font=tahoma]Hello World[/color][/font]', markup = True, font_size='20sp') 
     lblInitiate.size_hint = (0.1, 0.1) 
     anchor_layout.add_widget(lblInitiate) 
     return anchor_layout 
     NewFunction() 

    def NewFunction(): 
     lblOne = Label(text="[color=1f358e]Test[/color]") 
     return lblOne 

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

答えて

1

ちょうど行います

self.NewFunction()

いますが、このようNewFunctionを宣言する必要があることに注意してください:それは方法だとして

def NewFunction(self): < --- 自己

あなたのクラスの。

+0

これは非常に簡単でした。ありがとうございました! – Karrigan

+3

さらに、self.NewFunction()をビルドメソッドのreturn文の前にコールする必要があります。これをnew_function()にpythonicという名前を付けます:) – simplynail

関連する問題