Tkinter 键绑定在 Python 中不起作用

我正在尝试制作一个可以增加金钱或其他东西的按钮,但我只是想在另一个项目中测试它


这是我的按钮代码


global counterCheck

counterCheck = 0




def checkClick():

    global counterCheck

    counterCheck += 1

    textClick.config(text=counterCheck)



bttt = Button(root, width=1720, height=600, text="Click Here", command=checkClick)


bttt.bind("<space>", checkClick())

bttt.pack()


慕斯王
浏览 189回答 1
1回答

一只萌萌小番薯

您的代码实际上存在多个问题。第一个是常见问题,但还有更多:您执行该函数,然后将该函数的结果(即 )绑定None到事件;相反,你必须绑定函数本身另外,与 with 不同Button.command,当通过 via 调用函数时bind,它将获得一个参数,即触发它的事件通过将按键绑定到按钮,只有当按钮具有焦点时才会注册它(例如,按下 Tab 直到按钮“突出显示”时)并且该按钮已经有一个绑定,当它获得焦点并按下空格键时,可以“单击”,因此添加另一个绑定将使其做出两次反应实际上,我没有设法unbind从按钮执行“按空格键”操作,因此一种解决方法(除了不给按钮焦点之外)是使用不同的键,例如 ,Return并将其绑定到root或使用bind_all,所以它是绑定到所有小部件。def checkClick(*unused): # allow optional unused parameters    ...root.bind("<Return>", checkClick) # function itself, no (), root, and Return之后,可以通过三种方式触发按钮:通过单击它,调用command通过聚焦并按空格键,模拟点击通过按键Return,调用按键事件绑定
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python