用示例說明一下什麼是 JavaFX 中的 CheckBoxTreeItem?


複選框

複選框是一種選擇控制元件,形狀為正方形,裡面有刻度。它有三個狀態:選中、未選中和三態/不確定(可選)。與單選按鈕不同,你無法使用切換按鈕組合複選框。

樹檢視

樹提供了一種分層結構的檢視,每棵樹都包含一個根部(最高物件)和子項。你可以透過例項化 javafx.scene.control.TreeView 類來建立一個樹檢視。

CheckBoxTreeItem 是使用複選框形成的樹檢視。你可以透過例項化 javafx.scene.control.CheckBoxTreeItem 類來建立一個複選框樹項。

示例

以下示例演示瞭如何建立 CheckBoxTreeItem

import javafx.application.Application;
import javafx.geometry.Insets;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.CheckBoxTreeItem;
import javafx.scene.control.Label;
import javafx.scene.control.TreeView;
import javafx.scene.control.cell.CheckBoxTreeCell;
import javafx.scene.layout.VBox;
import javafx.scene.paint.Color;
import javafx.scene.text.Font;
import javafx.scene.text.FontPosture;
import javafx.scene.text.FontWeight;
import javafx.stage.Stage;
public class CheckBoxTreeExample extends Application {
   public void start(Stage stage) {
      //Creating the check boxes
      CheckBoxTreeItem<String> checkBox1 = new CheckBoxTreeItem<>("English");
      CheckBoxTreeItem<String> checkBox2 = new CheckBoxTreeItem<>("Hindi");
      CheckBoxTreeItem<String> checkBox3 = new CheckBoxTreeItem<>("Telugu");
      CheckBoxTreeItem<String> checkBox4 = new CheckBoxTreeItem<>("Tamil");
      //Creating the label
      Label label = new Label("Select known languages:");
      Font font = Font.font("verdana", FontWeight.BOLD, FontPosture.REGULAR, 12);
      label.setFont(font);
      //Creating the parent check box item
      CheckBoxTreeItem<String> languages = new CheckBoxTreeItem<>("Languages");
      languages.setExpanded(true);
      //Adding all the child check box items it the parent
      languages.getChildren().addAll(checkBox1, checkBox2, checkBox3, checkBox4);
      //Creating a tree view
      TreeView<String> treeView = new TreeView<>();
      //Adding the parent check box item to the tree view
      treeView.setRoot(languages);
      //Setting the cell factory
      treeView.setCellFactory(CheckBoxTreeCell.<String>forTreeView());
      //Setting the height of the tree view
      treeView.setMaxHeight(140);
      //Setting layout
      VBox vBox = new VBox(5);
      vBox.setPadding(new Insets(25, 5, 5, 50));
      vBox.getChildren().addAll(label, treeView);
      //Setting the stage
      Scene scene = new Scene(new Group(vBox), 595, 200, Color.BEIGE);
      stage.setTitle("Check Tree Item");
      stage.setScene(scene);
      stage.show();
   }
   public static void main(String args[]){
      launch(args);
   }
}

輸出

更新於: 2020 年 5 月 19 日

779 次檢視

開啟你的 職業生涯

完成課程並獲得認證

立即開始
廣告
© . All rights reserved.