虽然很明显如何在 a 中设置列/行的宽度/高度,GridPane
但我如何才能真正查询这些值?
问问题
6320 次
3 回答
2
JavaFX8:有一个包保护方法GridPane.getGrid
可以在两个暗淡的双数组中获取当前行/列的大小。您可以使用反射来访问它。在具有安全管理器的环境中,这将不起作用。
public double[][] getCurrentGrid(GridPane gp) {
double[][] ret=new double [0][0];
try {
Method m=gp.getClass().getDeclaredMethod("getGrid");
m.setAccessible(true);
ret=(double[][])m.invoke(gp);
} catch (Exception e) {
e.printStackTrace();
}
return ret;
}
于 2014-07-10T13:48:20.253 回答
0
免责声明:我从问题中提取了这个,OP(stefan.at.wpf)自行回答了它。答案不应包含在问题本身中。也不要使用编辑/更新:问题/答案不需要记录历史。
可以将空HBox
/添加VBox
到相应的GridPane
列/行并将侦听器附加到HBox
/ VBox
widthProperty
/ heightProperty
,但我仍然想知道是否有一种方法可以直接获取 a 中列/行的宽度和高度GridPane
。
于 2018-10-04T14:07:44.413 回答
0
在 javafx-8 中,现在有一个方法GridPane#impl_getCellBounds
可以解决问题,尽管它是内部 API 的一部分。(不确定这是否也适用于 javafx-2)
请注意,正如@olmstov所评论的,所提到的方法在更高版本的 javafx 中已被贬低和删除。如果有更好的方法(与公共 API 兼容),建议使用它而不是这种替代方法。
于 2018-06-23T13:49:51.470 回答