【问题标题】:ImageView not resizing to AnchorPane in JavaFX SceneBuilder/Layout XMLImageView 未在 JavaFX SceneBuilder/Layout XML 中调整为 AnchorPane 的大小
【发布时间】:2018-09-26 01:43:39
【问题描述】:

我在 JavaFX SceneBuilder 中的布局有问题。

我有一个GridPane,其中一个单元格在AnchorPane 内包含一个ImageView,并且希望图像调整为锚点。

我试过这个,但它不起作用。仅以全尺寸显示图像。

        <AnchorPane fx:id="imageAnchor" GridPane.columnIndex="4" GridPane.rowIndex="1">
            <ImageView pickOnBounds="true" fitHeight="${imageAnchor.height}">
            <image>
                <Image url="https: / /www.mydomain.com/path/image.png" />
            </image>
            </ImageView>
        </AnchorPane>

我也试过

        <AnchorPane fx:id="imageAnchor" GridPane.columnIndex="4" GridPane.rowIndex="1">
            <ImageView pickOnBounds="true" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
            <image>
                <Image url="https: / /www.mydomain.com/path/image.png" />
            </image>
            </ImageView>
        </AnchorPane>

...但两者都不起作用。任何想法可能是什么问题?

我想通过 SceneBuilder / XML 来实现。

【问题讨论】:

  • 最小 AnchorPane 大小 = ImageView 大小。窗格的大小永远不会调整到低于此大小,并且永远不会缩小。对于ImageView,将managed 设置为false。不考虑它的大小计算它的父母。
  • 谢谢@fabian。 managed="false" 解决了这个问题。

标签: xml javafx imageview layout-anchor


【解决方案1】:

我最终解决了这个问题:

         <AnchorPane fx:id="imageAnchor" GridPane.columnIndex="1" GridPane.rowIndex="1">
             <ImageView fitHeight="${imageAnchor.height}" managed="false" pickOnBounds="true" preserveRatio="true" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
                 <image>
                     <Image url="image.png" />
                 </image>
             </ImageView>
         </AnchorPane>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-06-06
    • 1970-01-01
    • 1970-01-01
    • 2015-03-09
    • 2014-09-10
    • 2020-06-07
    相关资源
    最近更新 更多