用示例说明一下什么是 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);
}
}输出

广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP