3

StackPane の ImageView のサイズ変更に問題があります。StackPane がルート コンテナで、イメージの高さと幅を StackPane にバインドすると、すべて問題ありません。

<StackPane id="StackPane" fx:id="stack" prefHeight="400.0" prefWidth="600.0" style="-fx-background-color: lightgreen;" styleClass="mainFxmlClass" xmlns:fx="http://javafx.com/fxml" fx:controller="javafxapplication8.FXMLController">
  <children>
    <ImageView fx:id="image" fitHeight="100.0" fitWidth="300.0" pickOnBounds="true" preserveRatio="true" />
  </children>
  <stylesheets>
    <URL value="@fxml.css" />
  </stylesheets>
</StackPane>

しかし、そのようなスタックペインをグリッドなどに配置すると、画像が適切にサイズ変更されません。私が読んだように、ImageView がサイズ変更できないという問題。サイズ変更可能にする方法はありますか?または、ImageView のサイズを変更する方法についてアドバイスをいただけますか?

4

1 に答える 1

3

StackPaneの背景画像を作成しようとしているようです。その場合、CSSを介して画像を適用する方が、ImageViewよりも使用するのに適したルートになる可能性があります。

.stack-pane {
  -fx-background-image: url("flower.png");
  -fx-background-size: cover;
}

JavaFXCSSリファレンスガイドのリージョン仕様の背景画像のセクションを参照してください。

ImageView自体のサイズを変更できるようにすることは、未解決の主要な問題です。この問題は、簡単な回避策のコードにリンクしています。サイズ変更可能なImagePaneは、サイズ変更可能なペインを埋めるために画像をラップします。

于 2012-11-20T07:12:06.523 に答える