2013-12-18 94 views

回答

1

所有你需要的是對其他按鈕的引用,那麼你可以做other_button.text = 'whatever'

要做到這一點的方法取決於你如何構建程序。例如,如果您使用kv語言在程序中構建,則可以使用id: some_id給出您的按鈕ID,並在on_press: some_id.do_something()之類的回調中引用它們。

在純python中,創建它們時可以在父類中繼續引用按鈕(例如self.button = Button()),以便回調可以引用self.button來更改它。顯然這是一個微不足道的例子,但總體思路可以讓你完成任何你想要的事情。

1

可能不是官方的方式,但請試試以下代碼。它將改變按鈕的文本屬性...

Ezs.kv文件:

#:kivy 1.8.0 

<Ezs>: 
    BoxLayout: 
     orientation: 'vertical' 
     padding: 0 
     spacing: 6 

     #choose 
     Button: 
      id: btn_1 
      text: 'text before' 
      on_press: btn_2.text = 'Whatever' 
      on_release: self.text = 'Who-Hoo' 
     #choose 
     Button: 
      id: btn_2 
      text: 'Press this' 
      on_release: self.text = 'HEEYY' 
      on_press: btn_1.text = 'text after' 

.py文件:

class Ezs(BoxLayout): 


class EzsApp(App): 

    def build(self): 
     return Ezs 

if __name__ == '__main__': 
    EzsApp().run() 
相關問題