2017-10-14 6 views
0

私のKVファイルのボタンの背景色を変更したいが、うまくいきません。ボタンが定義され、PythonファイルからループするPythonで定義されているKVファイルのボタンにアクセスする

def gotoPost(i, instance): 
    print("HAHAHAH") 
    Manager.current = 'ScreenTwo' 

class ScreenOne(Screen): 
    box = ObjectProperty(None) 

    def on_box(self, *args): 
     for i in range(5): 
      btn = Button(text=str(i)) 
      btn.bind(on_press=partial(gotoPost,i)) 
      self.box.add_widget(btn) 

Factory.register('ScreenOne', cls=ScreenOne) 

class ScreenTwo(Screen): 
    pass 

class Manager(ScreenManager): 

    screen_one = ObjectProperty(None) 
    screen_two = ObjectProperty(None) 

class MainApp(App): 
    def build(self): 
     return Manager() 
if __name__=="__main__": 
    MainApp().run() 

KVファイルのボタンにアクセスするにはどうすればよいですか?

答えて

0
class ScreenOne(Screen): 
    box = ObjectProperty(None) 
    color = [1.0,1.0,1.0,1.0] 
    back_color = [0.0,0.0,0.0,1.0] 
    def on_box(self, *args): 
     for i in range(5): 
      btn = Button(text=str(i), color= self.color, background_color= self.back_color) 
      btn.bind(on_press=partial(gotoPost,i)) 
      self.box.add_widget(btn) 

ボタンを押して、必要に応じて色を変更できます。例:self.colorまたはself.back_color =(7,0,1,1)...私はそれが赤だと思う。

+0

質問は「私はKVファイルのボタンにアクセスするにはどうすればいいですか? Pythonスクリプトには含まれていません。 – ikolim

関連する問題