如今如何在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
