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