Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 2.7 Tkinter绑定返回/输入按钮_Python 2.7_Tkinter - Fatal编程技术网

Python 2.7 Tkinter绑定返回/输入按钮

Python 2.7 Tkinter绑定返回/输入按钮,python-2.7,tkinter,Python 2.7,Tkinter,我有一个按钮,可以计算你点击它的次数。我想让它与返回/输入键以及工作。这是我的密码 import Tkinter window=Tkinter.Tk() window.title("Clicks Counter") presses=0 def addClick(self): global presses presses += 1 lbl.configure(text=presses) lbl=Tkinter.Label(window, text=presses) lbl.

我有一个按钮,可以计算你点击它的次数。我想让它与返回/输入键以及工作。这是我的密码

import Tkinter
window=Tkinter.Tk()
window.title("Clicks Counter")
presses=0
def addClick(self):
    global presses
    presses += 1
    lbl.configure(text=presses)
lbl=Tkinter.Label(window, text=presses)
lbl.pack()
btn=Tkinter.Button(window, text="Click Me", command=addClick)
btn.config(font=('helvetic',40))
btn.pack(expand=True, fill='both')
window.mainloop()

请建议如何以最简单的方式实现这一点

好的,感谢@BryanOakley的评论。正确答案是:

window.bind('<Return>', addClick)
window.bind('<BackSpace>', addClick)
btn.bind('<Button-1>', addClick)
def addClick(event):
    global presses
    presses += 1
    lbl.configure(text=presses)
def addClick(event=None):
    global presses
    presses += 1
    lbl.configure(text=presses)

window.bind('<Return>', addClick)
window.bind('<BackSpace>', addClick)
1->一方面,您可以使用
bind
方法设置所有事件(作为
按钮
作为
窗口
对象),它将是:

window.bind('<Return>', addClick)
window.bind('<BackSpace>', addClick)
btn.bind('<Button-1>', addClick)
def addClick(event):
    global presses
    presses += 1
    lbl.configure(text=presses)
def addClick(event=None):
    global presses
    presses += 1
    lbl.configure(text=presses)

window.bind('<Return>', addClick)
window.bind('<BackSpace>', addClick)
第一种选择的代码:

import Tkinter
window=Tkinter.Tk()
window.title("Clicks Counter")

presses=0

def addClick(event): # Change this line!
    global presses
    presses += 1
    lbl.configure(text=presses)

window.bind('<Return>', addClick) # Change this line!
window.bind('<BackSpace>', addClick) # Change this line!

lbl=Tkinter.Label(window, text=presses)
lbl.pack()
btn=Tkinter.Button(window, text="Click Me")
btn.config(font=('helvetic',40))
btn.pack(expand=True, fill='both')

btn.bind('<Button-1>', addClick) # Change this line!

window.mainloop()
第二种选择的代码:

import Tkinter
window=Tkinter.Tk()
window.title("Clicks Counter")
presses=0

def addClick(event=None): # Change this line!
    global presses
    presses += 1
    lbl.configure(text=presses)

window.bind('<Return>', addClick) # Change this line!
window.bind('<BackSpace>', addClick) # Change this line!

lbl=Tkinter.Label(window, text=presses)
lbl.pack()
btn=Tkinter.Button(window, text="Click Me", command=addClick)
btn.config(font=('helvetic',40))
btn.pack(expand=True, fill='both')
window.mainloop()
导入Tkinter
window=Tkinter.Tk()
窗口标题(“单击计数器”)
压力=0
def addClick(事件=无):#更改此行!
全球出版社
按下+=1
lbl.configure(文本=按下)
window.bind(“”,addClick)#更改此行!
window.bind(“”,addClick)#更改此行!
lbl=Tkinter.Label(窗口,文本=按)
lbl.pack()
btn=Tkinter.Button(窗口,text=“单击我”,command=addClick)
配置(字体=('helvetic',40))
btn.pack(expand=True,fill='both')
window.mainloop()

我希望这是您想要的并且再次感谢@BryanOakley:D

因为绑定将
事件
参数传递给回调,
addClick
必须修改才能接受此参数。由于该函数还用于按钮回调,因此事件参数需要是可选的。感谢@BryanOakley提供的这些信息,它非常有用:-)更好的默认值是
event=None