【发布时间】:2014-03-20 11:40:39
【问题描述】:
要在 JavaFX 2.2 中将窗口最小尺寸静态设置为 100x100 像素帧,可以使用:
stage.setMinWidth(100);
stage.setMinHeight(100);
假设我们不想设置固定的最小尺寸,但我们希望将窗口调整到其所有内容(按钮、文本字段等)仍然完全可见的最小尺寸。我们该怎么做?
【问题讨论】:
-
内部由javafx自动处理!
要在 JavaFX 2.2 中将窗口最小尺寸静态设置为 100x100 像素帧,可以使用:
stage.setMinWidth(100);
stage.setMinHeight(100);
假设我们不想设置固定的最小尺寸,但我们希望将窗口调整到其所有内容(按钮、文本字段等)仍然完全可见的最小尺寸。我们该怎么做?
【问题讨论】:
你可以尝试使用stage.minWidthProperty().bind(...这里绑定表达式...);
当然,难点在于定义绑定表达式……它应该依赖于你的所有组件,但它仍然可以工作。
调整子级的大小将修改绑定表达式并更改舞台上的 minWidthProperty。
【讨论】:
我建议您阅读 Pane、Region 和 Group 节点的 javadoc。关于他们如何布局和调整孩子的大小。基本上,如果您不设置窗格的首选大小,则默认情况下,它将根据其内容进行计算。也看看Window.sizeToScene() 方法。
【讨论】: