这是我的问题:我正在开发一个javaFX应用程序,我有一个带有2个菜单的MenuBar。 每个菜单都有自己的MenuItems显示,但这些只显示片刻,正是当我点击它们所属的菜单时。 这样,我无法点击MenuItems,因为它们消失得太快。
如果我点击菜单,但是只要我不点击窗口中的其他位置,我怎么能让这些MenuItem保持可见?
提前谢谢
答案 0 :(得分:0)
尝试CustomMenuItem并将setHideOnClick设置为false:
public class JavaFXApplication84 extends Application
{
@Override
public void start(Stage primaryStage)
{
MenuItem menuItem1 = new MenuItem("Open");
CustomMenuItem customMenuItem = new CustomMenuItem(new Label("Close"));
customMenuItem.setHideOnClick(false);
customMenuItem.setOnAction(event -> System.out.println("You clicked me!"));
Menu menu1 = new Menu("File");
menu1.getItems().addAll(menuItem1, customMenuItem);
Menu menu2 = new Menu("Options");
Menu menu3 = new Menu("Help");
MenuBar menuBar = new MenuBar();
menuBar.getMenus().addAll(menu1, menu2, menu3);
StackPane root = new StackPane();
root.getChildren().add(menuBar);
Scene scene = new Scene(root, 300, 250);
primaryStage.setTitle("Hello World!");
primaryStage.setScene(scene);
primaryStage.show();
}
/**
* @param args the command line arguments
*/
public static void main(String[] args)
{
launch(args);
}
}