【问题标题】:How to capture Ctrl key is pressed in eclipse RAP如何在 Eclipse RAP 中捕获 Ctrl 键被按下
【发布时间】:2016-09-18 09:16:22
【问题描述】:

我想知道eclipse RAP中Ctrl键是什么时候释放的,我在 RCP。但是了解到它在 RAP 上的行为有所不同。关于如何实现这一点的任何建议。

【问题讨论】:

    标签: eclipse user-interface swt eclipse-rcp eclipse-rap


    【解决方案1】:

    如果仅按下或释放修饰键(例如 ShiftCtrl 等),IIRC RAP 不会发送键事件。只有常规键,发送事件并且event.stateMask可以查询当前按下了哪些修饰键。

    Ctrl+A将发送keyPressedkeyReleased,其中character是A,stateMask是Ctrl。

    仅按 Ctrl 不会发送事件。

    如果有疑问,附上KeyListener 的简单Shell 将事件打印到System.out 将帮助您澄清问题。

    【讨论】:

    • 但问题是关键监听器没有在正确的时间被调用。我应该为此使用哪个监听器?
    • 只有按下 Ctrl 键时,RAP 无法获得通知。
    • 我的意思是,我可以从 stateMask 中获取你提到的哪个键被按下了,但是当一个键被按下时,键监听器会通知吗?
    • 正如我所说,只有在按下 常规 键时才会通知按键侦听器,无论是否带有修饰键。如果仅按下了修改过的键(如 Ctrl),则不会发送事件。
    • 我的目的是通过 Ctrl 单击选择多个项目。所以,在这里我从不使用单独的键和 Ctrl。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-01-15
    • 2010-10-23
    • 2015-09-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多