当前位置: 首页 > 知识库问答 >
问题:

如何获取gridpane中的信息

景唯
2023-03-14

我有一个在网格窗格(2x8)中创建新文本字段的方法。我想知道,一旦它们被创建,我如何访问每个索引中的信息(如:0,0-1,0等)。

代码如下:

private void llenarGridJugadores(ArrayList<NodoJugadores> array)
{
    if( (array.get(0).getCategoria() == 3) && (array.get(0).getSexo().equalsIgnoreCase("m")) )
    {
        for(int i = 0 ; i < array.size() ; i++)
        {
            TextField text = new TextField(array.get(i).getNombre());
            grid.add(text, i, 0);
        }
    }
    else if( (array.get(0).getCategoria() == 3) && (array.get(0).getSexo().equalsIgnoreCase("f")) )
    {
        for(int i = 0 ; i < array.size() ; i++)
        {
            TextField text = new TextField(array.get(i).getNombre());
            grid.add(text, 1, i);
        }

这就是我想做的:

public ArrayList<NodoJugadores> retornarGridJugadores(ArrayList<NodoJugadores> array, NodoCategorias aux)
{
    if( (aux.getNumCategoria() == 3) && (aux.getSexo().equalsIgnoreCase("m")) )
    {
        for(int i = 0 ; i < array.size() ; i++)
        {
            array.get(i).setNombre(grid.getChildren().get(i).getAccessibleText());
        }
    }
}

共有1个答案

秦才
2023-03-14

我将组件存储在我创建的新类的列表中。然后,我遍历了列表,以检查节点是否存在于(row,col)。

public class Triple{
    Node n;
    int row;
    int col;
    public Triple(Node n,int row, int col){
        this.row = row;
        this.col = col;
        this.n = n;
    }
}

这个类将一个节点存储到各自的位置。

 public static Node getItem(List <Triple> l, int findRow, int findCol){

    for(int i=0; i < l.size(); i++){
        if(l.get(i).row == findRow && l.get(i).col == findCol){
            return l.get(i).n;
        }
    }
    return null;
}

这个静态类接受列表、所需的行和所需的列。然后,如果在(row,col)处存在一个元素,则返回该节点。

public static void testThis(){
     List <Triple> list = new ArrayList<>();
     GridPane gp = new GridPane();
     Text a1 = new Text("Click here");
     Text a2 = new Text("Click there");
     gp.add(a1, 5, 5);
     gp.add(a2, 5, 5);

     for(int i=0; i<gp.getChildren().size; i++){
           list.add(new Triple(gp.getChildren().get(i),
                GridPane.getRowIndex(gp.getChildren().get(i)), GridPane.getColumnIndex(gp.getChildren().get(i))));
       }

        Text tempText = (Text) getItem (list, 5, 5);
        System.out.println(tempText.getText());

产生“点击这里”

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

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

  • 我在acroform字段中有以下pdf结构键: 我想键是字体描述,但我不明白这个值是什么意思。有人能帮忙破译吗?

  • 我在Android开发者网站http://developer.Android.com/training/animation/screen-slide.html上学习这个教程 我的情况是...

  • 问题内容: 当需要有关类型的信息时,可以使用: 得到: 要么: 得到: 现在,在Python文档中可以找到有关这些功能的信息,但是我想在终端/命令行中获取有关这些功能的信息。应该怎么做? 问题答案: 以python:为例,将为您提供函数的文档字符串。

  • 问题内容: 我正在编写一个在x86-32和x86-64 Linux中使用和进行反汇编的工具。问题是,尽管我能够分解libopcode,但无法获得任何指令信息。为了演示起见,我举了一个最小的例子来重现我的问题。该程序应从入口点反汇编到第一个/ 。 该代码有点被全局变量所破坏,为简洁起见,省略了错误检查等,但是应该清楚地说明问题。 可以使用以下内容构建此源。要执行成功的链接,需要将该软件包安装在本地计