小编bes*_*s67的帖子

使用JavaFX 2.2助记符(和加速器)

我正在努力使JavaFX Mnemonic工作.我在场景上有一些按钮,我想要实现的是按Ctrl + S来触发此按钮事件.这是一个代码方案:

@FXML
public Button btnFirst;

btnFirst.getScene().addMnemonic(new Mnemonic(btnFirst, 
            new KeyCodeCombination(KeyCode.S, KeyCombination.CONTROL_DOWN)));
Run Code Online (Sandbox Code Playgroud)

Button的mnemonicParsing是错误的.(好吧,在尝试完成这项工作时,我试图将其设置为true,但没有结果).JavaFX文档指出,当在场景上注册助记符,并且KeyCombination到达未使用的场景时,目标节点将被发送一个ActionEvent.但这不起作用,可能,我做错了......

我可以使用标准按钮的助记符(通过将mnemonicParsing设置为true并使用下划线字符设置前缀'F'字母).但是这样用户必须使用Alt键,这会在带有菜单栏的浏览器上带来一些奇怪的行为(如果应用程序嵌入到网页中,而不是通过按Alt + S触发按钮事件后激活的浏览器菜单).此外,标准方式使得无法像Ctrl + Shift + F3等那样制作快捷方式.

那么,如果有某种方法可以使这项工作?

javafx shortcut button javafx-2

9
推荐指数
1
解决办法
1万
查看次数

标签 统计

button ×1

javafx ×1

javafx-2 ×1

shortcut ×1