gpt4 book ai didi

java - 现在如何在 JavaFX 中从 TableView 获取 TableHeaderRow?

转载 作者:搜寻专家 更新时间:2023-10-31 19:37:15 27 4
gpt4 key购买 nike

在很多地方看到了如何用代码获取表头的例子

TableHeaderRow header = (TableHeaderRow) tableView.lookup("TableHeaderRow");

喜欢这里:How to prevent TableView from doing TableColumn re-order in javaFX 8?

但是这段代码为我返回了null

那如何到达TableHeaderRow呢?

最佳答案

TableHeaderRowSkin 创建,默认的 Skin 在应用 css 之前不会创建。

您可以调用 applyCss在将 TableView 添加到 Scene 并在此调用后访问 TableHeaderRow 之后。

或者监听 Skin 中的变化并在设置皮肤后执行该代码。

此外,我建议使用 TableViewSkinBase.getTableHeaderRow 来检索标题行,而不是使用 lookup(您正在使用 com.sun无论如何都要打包)。

tableView.skinProperty().addListener((a, b, newSkin) -> {
TableHeaderRow headerRow = ((TableViewSkinBase) newSkin).getTableHeaderRow();
...
});

关于java - 现在如何在 JavaFX 中从 TableView 获取 TableHeaderRow?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38718926/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com