我正在创建这个典型的图形软件,在每次单击时添加一个节点,在Shit上+单击您绘制顶点的节点,等等。所以我想创建一些用于触发算法的鼠标 - 键组合。例如,Alt + K + Click事件变成了Kruskal图....
到目前为止,我已经完成了:
root.setOnMouseClicked(new EventHandler<MouseEvent>() {
@Override
public void handle(MouseEvent t) {
if (t.isAltDown()) {
root.setOnKeyPressed(new EventHandler<KeyEvent>() {
@Override
public void handle(KeyEvent k) {
System.out.println(k.getText());
}
.....
.....
}
我得到了一个“扫描”键的缓冲区,但我不知道如何阻止它,k.consume不工作...
答案 0 :(得分:0)
如果将要作为ActionListener执行的操作添加到MenuItem,则可以使用MenuItem accelerator属性指定将触发它的组合键。一些很好的例子:http://thierrywasyl.wordpress.com/2012/08/01/keyboard-shortcuts-and-mnemonic-in-javafx/