JavaFX - не могу использовать подчеркивания в MenuItem - PullRequest
0 голосов
/ 30 июня 2018

Я создавал программу с JavaFX, когда натолкнулся на очень странную проблему. Я хотел создать MenuItem с текстом, который содержит подчеркивания (_), но когда этот текст отображается, подчеркивания исчезают. Вот пример кода:

public class JavaFXTest extends Application {

    @Override
    public void start(Stage primaryStage) throws Exception {

        BorderPane mainPane = new BorderPane();

        MenuBar menuBar = new MenuBar();
        Menu menu = new Menu("Menu");
        menuBar.getMenus().add(menu);

        MenuItem item = new MenuItem("Test_underscore");
        menu.getItems().add(item);

        mainPane.setTop(menuBar);

        primaryStage.setScene(new Scene(mainPane, 890, 570));
        primaryStage.show();
    }

    public static void main(String[] args) {
        launch(args);
    }
}

Вместо отображения «Test_underscore», это отображает это:

enter image description here

Кто-нибудь знает, что здесь может происходить?

1 Ответ

0 голосов
/ 01 июля 2018

Поскольку свойство mnemonicParsing для элемента равно true, подчеркивания получают специальную обработку. Установка этого свойства в false предотвращает это:

item.setMnemonicParsing(false);
...