如何使用 JavaFX 创建菜单?


菜单是一系列提供给用户进行选择或执行命令的选项。在 JavaFX 中,菜单由 javafx.scene.control.Menu 类表示,你可以通过实例化此类创建菜单。

实例化时,你可以将菜单的标题作为其构造函数的参数传递。Menu 类包含一个可观察列表,用于保存菜单内容(菜单项)。

菜单项和菜单栏

菜单项由 javafx.scene.control.MenuItem 类表示,它是 Menu 类的超类。你可以将文本或图片显示为菜单项,并为其添加所需的说明。

要创建一个菜单:-

  • 实例化 Menu 类。

  • 通过实例化 MenuItem 类创建所需数量的菜单项。

  • 将创建的菜单项添加到菜单的可观察列表中。

javafx.scene.control.MenuBar 类表示菜单栏,它包含UI应用程序中的所有菜单。

示例

import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.Menu;
import javafx.scene.control.MenuBar;
import javafx.scene.control.MenuItem;
import javafx.scene.paint.Color;
import javafx.stage.Stage;
public class MenuExample extends Application {
   public void start(Stage stage) {
      //Creating a menu
      Menu fileMenu = new Menu("File");
      //Creating menu Items
      MenuItem item1 = new MenuItem("Add Files");
      MenuItem item2 = new MenuItem("Start Converting");
      MenuItem item3 = new MenuItem("Stop Converting");
      MenuItem item4 = new MenuItem("Remove File");
      MenuItem item5 = new MenuItem("Exit");
      //Adding all the menu items to the menu
      fileMenu.getItems().addAll(item1, item2, item3, item4, item5);
      //Creating a menu bar and adding menu to it.
      MenuBar menuBar = new MenuBar(fileMenu);
      menuBar.setTranslateX(200);
      menuBar.setTranslateY(20);
      //Setting the stage
      Group root = new Group(menuBar);
      Scene scene = new Scene(root, 595, 200, Color.BEIGE);
      stage.setTitle("Menu Example");
      stage.setScene(scene);
      stage.show();
   }
   public static void main(String args[]){
      launch(args);
   }
}

输出

更新于:18-May-2020

3K+ 浏览量

开始你的 职业生涯

完成课程,获得认证

入门
广告