gpt4 book ai didi

python - 将当前单击的按钮作为参数传递给 Kivy 中的 on_press (Python)

转载 作者:太空宇宙 更新时间:2023-11-04 02:47:52 25 4
gpt4 key购买 nike

我试图在单击时删除当前按下的按钮。我的代码如下:

self.tp.get_current_tab().content.children[0].remove_widget(self.btn)
self.tp.switch_to(self.tp.get_current_tab())

但是 self.btn 被覆盖了。这是我创建按钮的地方:

self.btn = Button(text=self.btn.text, size_hint=(0.5,0.5), on_press=self.remove_filter_btn)

有没有办法将当前点击的按钮传递给remove_filter_btn?

谢谢。

最佳答案

remove_filter_btn 应该已经接收调用按钮的实例作为参数。

示例:

from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
from kivy.uix.button import Button


class MainWindow(BoxLayout):
def __init__(self, **kwargs):
super(MainWindow, self).__init__(**kwargs)
self.orientation= 'vertical'
for i in range(5):
self.btn = Button(text='Button ' + str(i) ,
on_press=self.remove_filter_btn)
self.add_widget(self.btn)

def remove_filter_btn(self, instance):
self.remove_widget(instance)

class MyApp(App):
def build(self):
return MainWindow()

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

执行:

enter image description here

关于python - 将当前单击的按钮作为参数传递给 Kivy 中的 on_press (Python),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44637633/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com