当前位置: 首页 > 面试题库 >

JavaFX:按行和列获取Node

许丁雷
2023-03-14
问题内容

如果我知道它的位置(行和列),是否有任何方法可以从gridPane获取特定的节点,或者有什么其他方法可以从gridPane获取节点呢?


问题答案:

我看不出有任何直接的API来获取由行列索引节点,但可以使用getChildrenAPI从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)



 类似资料:
  • 当我单击时,我尝试获取gridpane的行/列索引。 我在JTable(java swing)中寻找像getSelectedColumn()这样的方法 我搜索了这个。gridPane.getRowIndex(节点) 但这对我没有帮助。因为它需要节点名来获取行/列索引。 我通过语法制作了一个网格组件。所以节点名称是相同的。如何获取值?我的部分代码在下面。

  • 参考问题JavaFX TableView自定义单元格渲染拆分菜单按钮,我能够在每一行中渲染拆分菜单按钮。我已经按照James_D的建议和Keyur Bhanderi的回答更新了我的代码。这个问题是关于获取拆分菜单所在行的值,而无需在单击之前选择行。 更新:添加图像以查看输出 下面的图像显示输出,我点击的每个按钮。 更新SplitMenuCellFactory.java 更新,添加缺少的类 Spli

  • 如何在JavaFX的网格窗格中获取列索引和行索引。请参见下面的代码 当鼠标在text1上输入时,我想获取GridPane的列索引和行索引 请让我知道。

  • 问题内容: 我有大量的已发送电子邮件和状态码数据集。 在此示例中: 发送给 某人的 所有电子邮件的状态均为 1 发送给 他们 的中间电子邮件(按日期)的状态为 2 ,但最新的为 1 最近发送给 他人的 电子邮件的状态为 2 我需要检索的是发送给每个人的所有电子邮件的计数,以及 最新的 状态代码是什么。 第一部分非常简单: 这给了我: 我如何也可以获得最新的状态代码? 最终结果应为: 谢谢。 (服务

  • 我目前用JavaFX制作了一个表单。我总是按一个按钮,我调用“addAnswer()”-方法。在其中,我创建了一个RadioButton、一个Label和一个deleteButton,我将它们捆绑在一个HBox中。我把所有的HBox都装在一个vBox中。现在的问题是删除按钮。我想深入研究点击按钮的HBox。 这是我的代码: 我在上面试过这个,但我意识到,所有的delAnswers-Button都有

  • 我已经用python确定了我需要在excel文件中获取的行号;使用以下命令: i、 e.打印时,行号显示: 现在,我只是想知道如何使用行号;以获取不同的列值。所以,按行号获取列值。 例如,在下面的示例中: 如何使用行号;i、 e.假设,列“”,以获取“”值?