如何在 JavaFX 中停用選單項
選單是向用戶呈現的一系列選項或命令列表,通常選單包含執行某些操作的項。選單的內容稱為選單項,選單欄包含多個選單。
在 JavaFX 中,選單由 `javafx.scene.control.Menu` 類表示,選單項由 `javafx.scene.control.MenuItem` 類表示,`javafx.scene.control.MenuBar` 類表示選單欄。
建立選單:
例項化 **Menu** 類。
透過例項化 **MenuItem** 類建立所需數量的選單項。
將所有選單項新增到選單中:
fileMenu.getItems().addAll(item1, item2, item3);
透過例項化 **MenuBar** 類建立一個選單欄。
將所有建立的選單新增到選單欄中:
menuBar.getMenus().addAll(fileMenu, fileList, skin);
將選單欄新增到場景中。
停用 MenuItem
MenuItem 類包含一個名為 **visible** (布林型) 的屬性,該屬性指定是否顯示當前 MenuItem。您可以使用 **setVisible()** 方法設定此屬性的值。
要停用特定選單項,請透過傳遞布林值 **“false”** 來在其物件上呼叫 **setVisible()** 方法。
示例
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 DisablingMenuItems extends Application {
@Override
public void start(Stage stage) {
//Creating a menu
Menu fileMenu = new Menu("File");
//Creating menu Items
fileMenu.setMnemonicParsing(true);
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);
//Disabling menu items
item2.setDisable(true);
item3.setDisable(true);
//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);
}
}
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP