【发布时间】:2019-11-08 03:56:00
【问题描述】:
这是家庭作业的一部分。
如何访问放置在网格窗格内的复选框的属性?如果我通过:
.getChildren()
它返回一个节点列表,我可以使用它访问
.get(i)
然后自然返回节点类型的对象,但是通过它我无法访问复选框的属性,只能访问节点将具有的属性。我尝试通过阅读文档和谷歌搜索找到解决方案,但似乎无法找到解决方案。
Gridpane里面是checkbox填的,所以不用检查一个节点是否是checkbox,我需要检查每个box的selected属性。
我希望有一个指向正确方向的指针。
【问题讨论】:
-
除了强制转换之外,另一个选项是保持对每个
CheckBox的直接引用(例如在字段中)。如果有太多CheckBox对象需要在不同的字段中维护,那么您可以将它们存储在它们自己的List<CheckBox>或其他一些集合中。 -
Slaw 的建议将是我的首选方法:
GridPane中的孩子的顺序可能与GridPane中的位置相对应,也可能不对应,如果没有必要检索孩子的位置您可以只使用嵌套的CheckBox[][]数组或类似的东西。此外,如果您决定在未来某个时间向GridPane添加更多元素,这不会中断... -
我会记住这个建议,但更多的是提醒我必须在整体编程方面做得更好。我明白你们在说什么,但我从来没有应用过。