0

我有一堆具有特定preferedWidth 集的区域。这些区域是拖放 UI 中重用的可视化组件。

我想创建这些区域的容器,并尝试使用带有嵌入式 VBox 的 ScrollPane 来完成此操作。我希望滚动窗格足够宽以容纳 VBox 而无需水平滚动。

我可以手动计算出 VBox 的宽度并对滚动条宽度进行硬编码,但我更喜欢动态解决方案,以便稍后设置 vbox 的样式。不幸的是,vbox 的首选宽度为 -1,即使它的子项设置了首选宽度。

此外,如果我尝试将滚动窗格的preferedViewportWidth 设置为我的区域的宽度,我会得到取决于 hbarPolicy 的混合结果。如果此政策设置为 AS_NEEDED,则滚动条的宽度将被忽略,并且滚动条出现时会出现在我的区域上方。

任何想法我如何获得足够宽的 SrollPane 以适合我的区域有和没有垂直滚动条和可能的填充样式等。

4

1 回答 1

2

prefViewportWidthProperty()通过将 ScrollPane 绑定到子项的 width 属性解决了我的问题。

于 2012-09-26T12:19:29.260 回答