在TableView中访问TableRow的样式数据

时间:2018-10-03 15:27:47

标签: javafx testfx

我正在尝试编写一些TestFX代码,这些代码将遍历TableView组件,并检查每行的背景色设置是否正确。

我无法解决的是如何实际构造循环以遍历TableRows而不是实际数据。我尝试使用sourceTable.getItems(),但这仅使我可以访问包含数据的对象。但是我需要比这更低一些,并实际检查CSS标签的背景颜色。

我知道TableRow具有getStyle函数,该函数将返回我要查找的数据,但是我对如何构造遍历每一行的适当迭代感到困惑。

1 个答案:

答案 0 :(得分:-1)

我的第一个想法是使用queryAccessibleAttribute()方法。但是很遗憾,它无法按预期工作。可能有人可以纠正我。

for (int i=0;i<tableView.getItems().size();i++){
    TableRow row = (TableRow) tableView.queryAccessibleAttribute(AccessibleAttribute.ROW_AT_INDEX,i);
}

所以从现在开始,对呈现的表行使用lookup()。

Set<Node> tableRows = tableView.lookupAll("TableRow");