如何在不按任何按钮的情况下启用已禁用的按钮?

时间:2019-08-26 16:04:49

标签: python kivy

我有一个按钮,当它被按下时会被禁用,因为每次按下该按钮都会运行一个脚本(但是由于线程的原因,GUI和脚本都“同时”运行)。我希望能够在脚本完成运行之后再次启用该按钮。问题在于按钮是用kv文件编写的,而运行脚本的函数是用python写的。

我试图在kv文件之外调用实例'press_b',但是没有运气。我曾见过有人尝试在.kv文件外部调用按钮,但随后进行任何更改的情况下,用户必须按另一个按钮来重新启用上一个按钮,我不希望再有一个按钮。

.kv

<GUI>:
    GridLayout:
        Button:
            id: press_b
            text: "Press"
            font_size:30
            pos:130,180
            size:150,80
            on_press: root.func.start()
            on_release: press_b.disabled=True

.py

class GUI(GridLayout):
    def open_script(instance):
        script.run()
        #press_b enable

    #both the script and gui run simultaneosly
    func = threading.Thread(target=open_script, args=(1,))

每次我都尝试在代码外调用'press_b'时,我会收到“ NameError:未定义名称'press_b'”

0 个答案:

没有答案