您只能注册一次全局热键,但是您可以在处理程序中多次接收其事件。因此,基本思想是保存上次看到此键的时间,如果两次之间有一定延迟,则可以双击:
var last = 0l val listener = new HotKeyListener() { def onHotKey(hotKey: HotKey): Unit = { hotKey.keyStroke match { case `ctrlC` => if (System.currentTimeMillis() - last < 700) // arbitrary delay of 700 ms println("We have a double click!") else last = System.currentTimeMillis() } } }
如果您想要没有var的东西,我想您可以将其包装在a
Promise或其他东西中。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)