如何使用Python代码更改KivyMD按钮的on_release函数?我最初向KivyMD按钮添加了一个print语句,并用Python代码更改了KivyMD按钮的on_release函数,但问题是,它将我的新函数加入到按钮中,而不是替换以前的函数。这意味着,它还执行分配给按钮的前一个函数,但我希望完全更改函数,比如使用Python代码将其替换为新函数。
以下是我的Python代码
self.root.ids.btn.on_release = self.new_function提前感谢:)
发布于 2021-10-04 19:47:03
如果您的初始on_release函数是在kv中设置的,那么我认为您不能删除或替换它。我认为修复方法是扩展Button类,并在其__init__()方法中定义初始on_release函数。如下所示:
class MyButt(Button):
def __init__(self, **kwargs):
self.on_release = partial(print, 'hi')
return super(MyButt, self).__init__(**kwargs)然后将kv中的Button替换为MyButt,并从kv中删除on_release:行。
https://stackoverflow.com/questions/69438058
复制相似问题