如何在Ruby Tk中绑定键序列?

时间:2017-11-24 09:20:36

标签: ruby events sequence tk

我想在Ruby中的Tk小部件中绑定密钥序列if ($bar) { $foo = 1; } + Control_L。更明确地说,我想要一个proc来运行" Control_Left"和#34; Arrow-Up"被压在一起。

直到现在我还没有成功,我尝试了很多关于TclTk,Python和Perl文档的组合,但我找不到出路。

它应该类似于

Up

P.S。 widget.bind("Control_L Up", proc { puts "-----> sequence ok " }) 这两个事件一个接一个地被捕获。

1 个答案:

答案 0 :(得分:1)

我发现,对于将来可能需要它的人来说,这是工作片段

require 'tk'
root = TkRoot.new()
root.minsize [400, 300]
root.geometry "+200+200"
root.bind('Control-Key-Up', proc { puts "presssed Control + Up"; } )
Tk.mainloop()

观察到(1)它甚至以TclTk文档中所述的'Control Key Up'形式工作。但如果您将其写为'<Control-Key-Up>',则它不起作用,这是默认的Tk语法。