【问题标题】:My MenuBar isn't on the top of my window?我的菜单栏不在我的窗口顶部?
【发布时间】:2021-03-29 13:50:42
【问题描述】:

您好,我想像所有软件一样将菜单栏放在窗口顶部?

这是代码:


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

        Image image = new Image("GUI/Images/grass_block_side.png");
        ImageView imageView = new ImageView(image);
        imageView.setPreserveRatio(true);
        imageView.setFitHeight(128);
        FlowPane root = new FlowPane();
        Button btnConvert = new Button("Convert=>");
        MenuBar menuBar = new MenuBar();
        menuBar.setUseSystemMenuBar(true);
        Menu fichier = new Menu("Fichier");
        menuBar.getMenus().add(fichier);
        ListView<Material> ListViewMateriel = new ListView<>();
        ObservableList<Material> items = FXCollections.observableArrayList ();
        ListViewMateriel.setItems(items);
        root.getChildren().addAll(imageView,menuBar,btnConvert,ListViewMateriel);
        root.setPadding(new Insets(15,15,15,15));
        root.setHgap(10);
        root.setVgap(20);

【问题讨论】:

  • 它将像任何其他组件一样布局。如果你把它放在FlowPane 中,它将与其他控件一起流动。通常最好使用BorderPane
  • .. 或者换句话说:了解布局:)

标签: java javafx menubar


【解决方案1】:

如果我可以推荐使用 Scene Builder,那么一切都可以轻松完成,这太荒谬了。在那里,您可以将其锚定在顶部、左侧和右侧,这样就可以了。只是一个建议

【讨论】:

  • scenebuilder 与否 - 重点是了解布局在做什么;)
  • 你没有错。我觉得更容易理解布局在场景构建中是如何工作的,但每个都有自己的:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-01-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-08-05
  • 1970-01-01
相关资源
最近更新 更多