JavaFX:按行和列获取Node
如果我知道它的位置(行和列),是否有任何方法可以从gridPane获取特定的节点,或者有什么其他方法可以从gridPane获取节点呢?
回答:
我看不出有任何直接的API来获取由行列索引节点,但可以使用getChildren
API从Pane
,并getRowIndex(Node
child)与getColumnIndex(Node child)
来自GridPane
//Gets the list of children of this Parent. public ObservableList<Node> getChildren()
//Returns the child's column index constraint if set
public static java.lang.Integer getColumnIndex(Node child)
//Returns the child's row index constraint if set.
public static java.lang.Integer getRowIndex(Node child)
以下是示例代码,可从中获取Node
使用的行和列索引GridPane
public Node getNodeByRowColumnIndex (final int row, final int column, GridPane gridPane) { Node result = null;
ObservableList<Node> childrens = gridPane.getChildren();
for (Node node : childrens) {
if(gridPane.getRowIndex(node) == row && gridPane.getColumnIndex(node) == column) {
result = node;
break;
}
}
return result;
}
getRowIndex()
和getColumnIndex()
现在是静态方法,应更改为GridPane.getRowIndex(node)
和GridPane.getColumnIndex(node)
。
以上是 JavaFX:按行和列获取Node 的全部内容, 来源链接: utcz.com/qa/425694.html