并且不必以该确切分辨率更新Start方法。有一些自动关键字吗?
Scene scene = new Scene(root,364,635);
非常感谢您的宝贵时间。
答案 0 :(得分:2)
如果您要使用其内容的首选大小初始化Scene
,请在构造过程中不要显式设置大小。来自Scene
的{{3}}:
场景的大小可以在构建过程中由应用程序初始化。如果未指定大小,则场景将根据其内容的首选大小自动计算其初始大小。如果仅指定一个维,则将使用指定的维来计算另一个维,同时要考虑根的内容偏差。
您的情况下,只需使用:
Scene scene = new Scene(root);
如果必须在构造过程中指定宽度和高度(例如,要设置深度缓冲区和/或抗锯齿),请为宽度和高度使用负数(例如-1
)。
Scene scene = new Scene(root, -1, -1, true, SceneAntialiasing.BALANCED);
这将导致Scene
仍使用其内容的首选大小 1 。请注意,如果使用3D功能,则只需要处理深度缓冲/抗锯齿(有关更多信息,请阅读链接的文档)。
1。找不到有关此文档。但是,如果我正确理解实现方式,则使用负数与未设置维度相同。
答案 1 :(得分:1)
您可以尝试在舞台对象上调用sizeToScene方法。
您可以在文档中阅读它...
https://docs.oracle.com/javase/8/javafx/api/javafx/stage/Window.html#sizeToScene--
编辑: 高度和宽度的场景参数应删除。