2016-04-05 20 views
1

Bu oldukça basit bir konu gibi gözüküyor ama ben bunu çözemiyorum. Python 2.7 ile Kivy kullanıyorum. NewFunction() işlevini iç yapıdan (self) nasıl arayabilirim?Bir Kivy uygulamasında başka bir işlev mi arıyorsunuz?

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() 

cevap

1

Hemen yapın:

self.NewFunction()

ama böyle NewFunction beyan gerektiğini unutmayın:

def NewFunction(self): < --- öz

bir yöntemidir olarak sınıfının

+0

Bu çok basitti. Teşekkür ederim! – Karrigan

+3

Ayrıca, build methodunda 'return' ifadesinden önce self.NewFunction() öğesini çağırmanız gerekir. Bunu new_function() olarak adlandırın pythonic :) – simplynail

İlgili konular