我有一个borderPane,其中有一个菜单顶部,一个网格左侧和一个中心图像。我希望图像与边界中心具有相同的大小,因为现在图像覆盖了我的网格。JavaFx图像调整大小
我尝试这样做:
imageView.fitWidthProperty().bind(box.widthProperty());
其中ImageView的是我的形象和框中的名称是BorderPane object.Thank你。
我有一个borderPane,其中有一个菜单顶部,一个网格左侧和一个中心图像。我希望图像与边界中心具有相同的大小,因为现在图像覆盖了我的网格。JavaFx图像调整大小
我尝试这样做:
imageView.fitWidthProperty().bind(box.widthProperty());
其中ImageView的是我的形象和框中的名称是BorderPane object.Thank你。
参见JavaFX的功能请求RT-21337 Add ImageViewPane and MediaViewPane controls其包含用于样品ImageViewPane
实现其将调整大小它包含提供给区域的区域中的一个ImageView
代码附件。要获得所需的行为,可能也需要在ImageViewPane
上实现computeMinWidth和computeMinHeight,以使它们返回零而不是图像的最小大小。
现在的图像会在我的网格
这是因为图像的最小尺寸是目前比你BorderPane中心的可用空间较大:
BorderPane在默认情况下不剪裁其内容,因此如果儿童的最小尺寸阻止它在其空间内适合,则儿童的边界可能会超出其自身范围。
一些潜在的替代品,以防止中心内容溢出边界:
ImageView
的大小,如上面链接的ImageViewPane
样本。ImageView
置于ScrollPane中。ImageView
。我尝试这样做:
imageView.fitWidthProperty().bind(box.widthProperty());
从提供的代码我的猜测是,这并没有工作,因为图像的包围盒是某种形式的动态调整大小的窗格,所以盒子的最小宽度由图像的宽度决定,反之亦然。