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

如何访问javafx中的girdpane列和行?

施轶
2023-03-14

我在scenebuilder中构建了一个网格窗格。我在每个单元都有一个图像视图。我想建立一个动态图片库。我想删除每行的最后一个图像,并将其添加到下一行的第一列?我该怎么做?我是javafx的beginer,请帮助我:(谢谢)

共有1个答案

马银龙
2023-03-14

未经测试,但这应该有效:

// if you know how many columns you have (and their indexes) this step is unnecessary:
int minColIndex = Integer.MAX_VALUE ;
int maxColIndex = Integer.MIN_VALUE ;
for (Node node : gridPane.getChildren()) {
    int colIndex = GridPane.getColumnIndex(node);
    if (colIndex < minColIndex) minColIndex = colIndex ;
    if (colIndex > maxColIndex) maxColIndex = colIndex ;
}

// Update row and column indexes:
for (Node node : gridPane.getChildren()) {
    int colIndex = GridPane.getColumnIndex(node);
    if (colIndex == maxColIndex) {
        int rowIndex = GridPane.getRowIndex(node);
        GridPane.setRowIndex(node, rowIndex+1);
        GridPane.setColIndex(node, minColIndex);
    } else {
        GridPane.setColIndex(node, colIndex + 1) ;
    }
}

不过,你确定TilePane不会更适合你的需求吗?

 类似资料:
  • 最近我正在用JavaFx2.0编程一个软件,但是我遇到了一个大问题,那就是——我如何访问一个控制器类?对于每个具有相同类类型的控制器类,它们可能会因为它所依赖的模型而表现不同,所以我想获取视图的控制器类并为其提供指定的模型,我可以这样做吗?我已经尝试通过FXMLLoader获取控制器,但是方法getController()返回null!为什么? 1.LightView.java 2.LightVi

  • 问题内容: 我在python中有一个由列表列表建模的2D数组,我想提取该列。我进行了快速研究,发现了一种使用numpy数组的方法。问题是 我不想使用numpy, 所以不想将列表列表转换为numpy数组,然后使用[:,1]语法。我尝试在正常的列表列表上使用它,但显示错误,因此是不可能的。我正在为列表列表请求类似的东西,而不必遍历每个元素(在numpy数组中,使用[:,1]语法访问列比在数组元素上进行

  • 所以我的问题很简单。当类成员是而不是时,我可以访问单独类中的类成员,但当它们是时,我似乎不能。使用JDK7U6(W/JavaFX2.2)。 简单的例子。第一个管用,第二个不行。可以在第一个示例中赋值,但是在第二个示例中得到了一个NullPointer。有人能解释为什么在下面的第二个示例中是null吗? 更新:我从最初的问题中删除了@fxml注释,因为我认为它们对我遇到的问题没有必要。另外,请参阅@

  • 我尝试了这段代码,但遇到了致命的异常。我想要数据列表并将其存储在arralist中。有人请帮助我如何访问用户兴趣列表。 从这个 用户LMECILdKstfD1kgmtMQv6wOswxa2电子邮件:“shetyheef@gmail.com“密码:“qwerty”

  • 我有一个带有start方法的类,用于启动JavaFX的primaryStage。 但是,我有另一个名为change_screen(int n)的函数,它将根据传递给它的数字创建一个新场景,并为该新场景执行primarystage.setscene()和.show()。 如果我的方法是错误的,那么在同一个窗口中改变几个场景的正确方法是什么?

  • 我的背景: 9-ea-113(这是javafx现在完全模块化,没有jfrt.jar) eclipse-neon-M6与当前的测试版支持java9(运行在java8上,如果这很重要) win7 简单地说 没有编译,因为javafx。找不到xx个包。 要怎么做?