我希望能够在SWT菜单打开时检测键盘输入(即TAB键),但是当使用addListener
方法添加侦听器时,它似乎不会广播任何事件,并且没有addKeyListener
或addTraverseListener
方法。
我还尝试将监听器添加到添加了菜单的控件(它是一个弹出菜单)以及shell,但是关键事件也没有进入这些对象。
看起来菜单是一个操作系统级别的控件,它会占用键盘事件。有人找到了从弹出菜单中获取击键的方法吗?或者是制作我自己的非OS弹出菜单的唯一选择?
答案 0 :(得分:0)
您是正确的SWT菜单是本机窗口系统菜单。在这种情况下,我不确定你的动词“遍历”是什么意思。你是说“可能选择的黄昏”吗?我相信,在SWT中,这被称为“武装”,你确实可以为武装事件添加听众。请参阅this snippet。
如果我完全误解了你的问题,请在评论中告诉我,我会删除。