2016-04-25 2 views
6

Я работаю с SceneBuilder, и я замечаю, что он применяет атрибут mnemonicParsing и приравнивает его к false за каждые Node, которые я делаю.Что такое атрибут «mnemonicParsing» в Java FX

Что это такое? Какая разница в Layout.xml?

+0

Связанные: [Меню JavaFX - первая буква, украшение подчеркивания] (http://stackoverflow.com/questions/24499500/javafx-menu-first-letter-underline-decoration) – jewelsea

ответ

13

Это относится к Labeled.mnemonicParsing property. Он регистрирует комбинацию клавиш для активации элемента (используя следующую букву _ в text + Alt (Windows, не знаю, является ли это одним и тем же ключом на другой ОС)). Например.

Button btn = new Button(); 
btn.setText("_Say 'Hello World'"); 
btn.setMnemonicParsing(true); 
btn.setOnAction(new EventHandler<ActionEvent>() { 

    @Override 
    public void handle(ActionEvent event) { 
     System.out.println("Hello World!"); 
    } 
}); 

будет печатать Hello World!, если пользователь нажимает Alt + S.

Этого не происходит, если mnemnonicParsing является false. В этом случае _ также будет напечатан «обычно» вместо подчеркивания следующей буквы.