如今如何在JavaFX中从TableView获取TableHeaderRow?
我在许多地方看到了有关如何通过代码获取表头的示例
TableHeaderRow header = (TableHeaderRow) tableView.lookup("TableHeaderRow");
但是这段代码null
为我返回。
怎么到达TableHeaderRow
呢?
回答:
的TableHeaderRow
创建者为Skin
,而默认值Skin
只有在应用CSS后才会创建。
您可以applyCss
在将添加TableView
到后将其调用Scene
,TableHeaderRow
然后在此调用之后访问。
或者,侦听中的更改Skin
并在设置外观后执行该代码。
此外,我建议使用TableViewSkinBase.getTableHeaderRow
而不是使用来检索标题行lookup
(com.sun
无论如何,您都在使用包)。
tableView.skinProperty().addListener((a, b, newSkin) -> { TableHeaderRow headerRow = ((TableViewSkinBase) newSkin).getTableHeaderRow();
...
});
以上是 如今如何在JavaFX中从TableView获取TableHeaderRow? 的全部内容, 来源链接: utcz.com/qa/413864.html