JavaFX 2.0 中的 TableView 组件详解

1星 | 下载需积分: 49 | DOC格式 | 253KB | 更新于2024-09-14 | 138 浏览量 | 15 下载量 举报
收藏
JavaFX 2.0 表格框 TableView JavaFX 2.0 中的表格框是一个非常重要的组件,它可以用来呈现数据。TableView 是 JavaFX 应用中创建表格的最重要类之一。它可以与 TableColumn 和 TableCell 配合使用,来创建一个完整的表格。 TableView 提供了许多内置的功能,例如数据排序和重置大小。开发者可以通过实现数据模型或者应用一个细胞工厂来产生表格。TableView 也提供了许多方法来自定义表格的行为,例如设置表格的宽度和高度、添加列和行、设置单元格的值等。 在 JavaFX 应用中,创建一个表格需要 several 步骤。首先,需要创建一个 TableView 对象,然后添加 TableColumn 对象来定义表格的列。接着,需要添加数据到表格中,可以通过实现数据模型或者应用一个细胞工厂来产生表格。 下面是一个简单的例子,演示了如何创建一个表格: ```java import javafx.application.Application; import javafx.geometry.Insets; import javafx.scene.Group; import javafx.scene.Scene; import javafx.scene.control.Label; import javafx.scene.control.TableColumn; import javafx.scene.control.TableView; import javafx.scene.layout.VBox; import javafx.scene.text.Font; import javafx.stage.Stage; public class Main extends Application { private TableView table = new TableView(); public static void main(String[] args) { launch(args); } @Override public void start(Stage stage) { Scene scene = new Scene(new Group()); stage.setTitle("TableView Sample"); stage.setWidth(400); stage.setHeight(500); final Label label = new Label("Address Book"); label.setFont(new Font("Arial", 20)); TableColumn firstNamCol = new TableColumn("First Name"); TableColumn lastNameCol = new TableColumn("Last Name"); TableColumn emailCol = new TableColumn("Email"); table.getColumns().addAll(firstNamCol, lastNameCol, emailCol); VBox vbox = new VBox(); vbox.getChildren().addAll(label, table); scene.setRoot(vbox); stage.setScene(scene); stage.show(); } } ``` 这个例子中,我们首先创建了一个 TableView 对象,然后添加了三个 TableColumn 对象来定义表格的列。接着,我们将表格添加到场景中,并设置了表格的宽度和高度。 TableView 也提供了许多事件处理器,例如当用户点击表格中的某一行时,可以触发一个事件处理器来处理该事件。例如: ```java table.getSelectionModel().selectedItemProperty().addListener(new ChangeListener() { @Override public void changed(ObservableValue observable, Object oldValue, Object newValue) { System.out.println("Selected item: " + newValue); } }); ``` 这个例子中,我们添加了一个事件处理器来监听表格中的选择项变化。当用户点击表格中的某一行时,事件处理器将被触发,并打印出选定的项。 JavaFX 2.0 的表格框是一个功能强大且灵活的组件,可以用来呈现数据。开发者可以通过实现数据模型或者应用一个细胞工厂来产生表格,并使用 TableView 提供的许多方法和事件处理器来自定义表格的行为。

相关推荐