JavaFX如何为按钮设置快捷键?
程序员文章站
2022-10-24 22:29:08
JavaFX为按钮设置快捷键的方式有很多,先说下常见的一种。 第一种: 1 KeyCodeCombination kc1 = new KeyCodeCombination(KeyCode.W, KeyCodeCombination.CONTROL_DOWN); 2 Mnemonic mnemonic ......
javafx为按钮设置快捷键的方式有很多,先说下常见的一种。
第一种:
1 keycodecombination kc1 = new keycodecombination(keycode.w, keycodecombination.control_down); 2 mnemonic mnemonic1 = new mnemonic(b1, kc1); 3 scene.addmnemonic(mnemonic1);
解析:
keycodecombination是一个继承keycombination的一个类这个创建keycodecombination的对象,在构造方法内写入快件键的按键。
mnemonic类似于监听器绑定的东西,你创建了监听器你需要绑定控件,new一个mnemonic的对象就行了。
第二种:(几乎没用过)
1 keycodecombination kc1 = new keycodecombination("w", keycodecombination.control_down); 2 mnemonic mnemonic1 = new mnemonic(b1, kc1); 3 scene.addmnemonic(mnemonic1);
解析:
这个方法与上一个比,只是改变了keycodecombination构造方法的内容,直接用字符串的形式也是可以的。
第三种:(推荐使用)
keycodecombination kc1 = new keycodecombination(keycode.w, keycodecombination.control_down); scene.getaccelerators().put(kc1, new runnable() { @override public void run() { system.out.println("事件"); } });
解析:
这个方法非常灵活,但是你会发现他没有和按钮绑定,也就是说,他可以设置全局的快捷方式。如果需要和按钮绑定,方法很简单,调用按钮的方法就行了!(可以用封装的方法)
还可以用b1.fire()哦
注意:他不是创建了新的线程。