- 58
- 0
可以举一个例子具体说明一下吗
- 共 0 条
- 全部回答
-
女人要有范儿 普通会员 1楼
在JavaFX中,你可以使用JavaFXTable和javafx.data.DataModel类来实现对Table view中的数据绑定事件。以下是一个简单的例子:
```java import javafx.application.Application; import javafx.beans.value.ChangeListener; import javafx.beans.value.ValueEvent; import javafx.event.ActionEvent; import javafx.event.EventHandler; import javafx.scene.Scene; import javafx.scene.control.TableColumn; import javafx.scene.control.TableModel; import javafx.scene.control.TableRow; import javafx.scene.layout.StackPane; import javafx.scene.layout.VBox; import javafx.scene.text.Text; import javafx.stage.Stage;
public class Main extends Application {
private final static String[] DATA = {"Apple", "Banana", "Cherry", "Date", "Elderberry"}; @Override public void start(Stage primaryStage) { VBox root = new VBox(); root.getChildren().addAll(new TableColumn("Apple"), new TableColumn("Banana"), new TableColumn("Cherry"), new TableColumn("Date"), new TableColumn("Elderberry")); // 添加数据模型 final TableModel model = new TableModel(); for (String fruit : DATA) { model.addRow(new Object[]{fruit}); } // 创建数据绑定 final ValueEvent坐下事件 = new ValueEvent<Void>() { @Override public Void evaluate() { for (int i = 0; i < model.getItems().size(); i++) { TableRow row = model.getItems().get(i); row.setTableData(model.getItems()); } return null; } }; for (int i = 0; i < model.getItems().size(); i++) { TableColumn col = model.getItems().get(i); col.setPrefWidth(100); col.setCellValueFactory(new Function<String, Object>() { @Override public Object call(String fruit) { return fruit; } }); col.setCellFactory(new DefaultTableRowCellFactory()); // 添加坐下事件监听器 col接听事件 = new ValueEvent<Void>() { @Override public Void evaluate() { for (int i = 0; i < model.getItems().size(); i++) { TableRow row = model.getItems().get(i); row接听事件(); } return null; } }; col接听事件.connect(col接听事件); } // 设置场景 Scene scene = new Scene(root, 400, 200); primaryStage.setTitle("Table View"); primaryStage.setScene(scene); primaryStage.show(); } public static void main(String[] args) { launch(args); }} ```
在这个例子中,我们首先创建了一个包含四个列的数据模型。然后,我们创建了一个数据绑定,该数据绑定将每个列的数据绑定到一个Row对象。我们还创建了一个坐下事件监听器,该监听器将当用户坐下时,更新每个列的数据。
最后,我们设置了一个场景,并显示了这个场景。
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部

