|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
from tkinter import *
root = Tk()
def callback(event):
print('点击位置',event.x,event.y)
frame = Frame(root,width=200,height=200,bg='white')
frame.bind('<Any-Key>',callback)
frame.pack()
mainloop()
执行上概述代码, 按键盘任意键, 发现并没有显示x和y的位置, 是什么原因呢?
你的问题是由于 frame.bind('', callback) 中的事件绑定字符串有误。要捕获按键事件,应该使用 '<Key>' 事件。下面是修正后的代码:
- from tkinter import *
- root = Tk()
- def callback(event):
- print('点击位置', event.x, event.y)
- frame = Frame(root, width=200, height=200, bg='white')
- frame.bind('<Key>', callback)
- frame.pack()
- frame.focus_set() # 使frame获得键盘焦点
- mainloop()
复制代码
注意,在绑定完事件后,添加了 frame.focus_set() 来确保 frame 可以获得键盘输入焦点,这样才能捕获按键事件。
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
|
|