亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Python Kivy:如何檢查按鈕是否被點擊?

Python Kivy:如何檢查按鈕是否被點擊?

繁星點點滴滴 2023-02-07 16:30:33
我必須創建多個按鈕(對于給定列表中的每個元素)。為此,我正在使用 for 循環。必須記錄按下的按鈕。但是,self.i 的值并未存儲在該特定實例中,即最后一個值(在本例中 - 2 已存儲,在循環完成后)。我該如何解決這個錯誤?有沒有辦法添加條件語句來檢查按鈕是否被單擊,如果是,則將 self.i 的值存儲在另一個變量中。class InfoPage(GridLayout):    def __init__(self, **kwargs):        super(InfoPage, self).__init__(**kwargs)        self.cols = 1        self.peers = ["ishika", "nate", "nf"]        for self.i in range(3):            self.peers[self.i] = Button(text=peers[self.i], id=str(self.i))            self.add_widget(self.peers[self.i])            self.peers[self.i].bind(on_press=self.add)    def add(self, _):        id_of_button_pressed = self.peers[self.i].id        print(id_of_button_pressed)
查看完整描述

1 回答

?
慕斯王

TA貢獻1864條經驗 獲得超2個贊

您的add()方法正在使用self.i,這將是在方法 ( )self.i中設置的最后一個值。所以你只需要將你的方法修改為:__init__()2add()


def add(self, button):

    id_of_button_pressed = button.id

    print(id_of_button_pressed)


查看完整回答
反對 回復 2023-02-07
  • 1 回答
  • 0 關注
  • 229 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號