【问题标题】:how add GridPane on TableView in javafx如何在 javafx 中的 TableView 上添加 GridPane
【发布时间】:2013-06-13 04:51:54
【问题描述】:

我有类似 GridPane 的对象

GridPane gridPane1 = new GridPane();
gridPane1.add(label1, 0, 0);
gridPane1.add(label2, 1, 0);
gridPane1.add(label3, 0, 1);
gridPane1.add(label4, 1, 1);

 GridPane gridPane2 = new GridPane();
    gridPane2.add(label1, 0, 0);
    gridPane2.add(label2, 1, 0);
    gridPane2.add(label3, 0, 1);
    gridPane2.add(label4, 1, 1);

现在如何将这个对象添加到 javafx 的 tableView 中?

【问题讨论】:

  • 添加是什么意思?你想要一个两列一行包含两个网格窗格的表格视图吗?请澄清。
  • 是的...你明白我的意思。

标签: javafx-2 javafx javafx-8


【解决方案1】:

您应该知道,JavaFX TableView 实际上并不像网格那样工作,您可以在其中添加任意对象。相反,TableView 是一种按行显示 POJO 的方式,其中单个单元格内容的视觉外观由 TableColumn 中的 CellFactories 确定。请阅读 this 以了解 TableView 的工作原理。

也就是说,我建议对您的请求使用不同的方法:将 GridPanes 添加到 HBox 中并设置 HBox 的样式,使其看起来像一个表格或类似的东西(这可以通过 css 轻松实现)。如果你真的想使用 TableView,解决方案是使用具有两个属性的 POJO:第一个 GridPane 和第二个 Gridpane。然后使用两个 TableColumn 单元工厂,它们返回 POJO 的适当 GridPane,这样您就可以将这些内容硬编码到您的 TableView 中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-12-31
    • 1970-01-01
    • 1970-01-01
    • 2021-12-04
    • 1970-01-01
    • 2015-12-29
    • 2017-12-16
    相关资源
    最近更新 更多