我想在控制台中显示我在 Tk 窗口中按下的内容。
我写了下面的代码:
require 'tk'
root = TkRoot.new
entry = TkEntry.new(root) do
pack
end
entry.bind("Key", proc {p "key pressed"})
Tk.mainloop
如果我按任意键,它会显示key pressed
。
但我想显示我按下的键,而不是常量字符串。谁能帮帮我?
最佳答案
也许是我。将绑定(bind)更改为:
entry.bind("Key", proc{|k| p "key pressed #{k}"}, "%K")
根据格式,使用 %A
(ASCII 码)、%K
( key 符号名称)或 %N
( key 符号number) 作为最后一个参数。
关于ruby - 如何在 Ruby Tk 中绑定(bind)按键事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36264990/