我的問題是,在使用JavaFX中的應用程序窗口大小操作期間,如何實現圖像自動調整大小?可以直接在SceneBuilder中完成嗎?JavaFX FXML-SceneBuilder-Image-resizable
0
A
回答
2
它會將其WidthProperty
和HeightProperty
與窗口大小綁定。我們假設節點root
反映窗口的大小。
ImageView iv = new ImageView();
iv.fitWidthProperty().bind(root.widthProperty());
iv.fitHeightProperty().bind(root.heightProperty());
現在它與父母的屬性劃傷(root
)。您也可以選擇不同的節點或執行一些計算來修改大小。
2
不使用ImageView
,但如果添加圖像作爲背景圖像的Region
,這意味着Region
可以調整大小,因此可以將背景圖片,如果使用適當的設置。例如。你可以使用下面的CSS屬性包括在Region
的計算器標誌:
-fx-background-image: url('http://cdn.sstatic.net/Sites/stackoverflow/company/img/logos/so/so-logo.png?v=9c558ec15d8a');
-fx-background-size: contain;
-fx-background-repeat: no-repeat;
-fx-background-position: center;
(在上面的代碼中屬性名和值由:
分隔和;
是不是值的一部分,這是寫成你寫在一個css樣式表中的規則。)
你可以用stretch
替換contain
不保留高寬比。在這種情況下,您不需要-fx-background-position
屬性。
關於使用的屬性更多信息可以在CSS doc for Region
.
這應該只要你將它添加到正在調整的Region
工作中找到。如果要將圖像調整爲完整場景大小,則需要設置根目錄Pane
處的屬性。
除此之外,您可能需要編寫自定義控件。 (AFAIK無法使用SceneBuilder中的表達式綁定。)
相關問題
- 1. ? (javafx)
- 2. Javafx-Java更新禁用javafx
- 3. javafx-2和javafx-8已棄用javafx標記嗎?
- 4. JavaFX FileChooser
- 5. JavaFX MousePosition
- 6. JavaFX中
- 7. JavaFX IllegalArgumentException
- 8. TranslateTransition JavaFX
- 9. NumberField javafx
- 10. JavaFX Datagrid
- 11. JavaFX中
- 12. JavaFX&iText7
- 13. JavaFX中
- 14. CubicCurve JavaFX
- 15. JavaFX中
- 16. JavaFX中
- 17. ActionEventHandler JavaFX
- 18. JavaFX RequestFocus
- 19. StyleableProperty JavaFx
- 20. NullPointerException - JavaFX
- 21. Javafx,SceneSwaping
- 22. JavaFX GridPane
- 23. JavaFX中
- 24. javafx scene.lookup
- 25. JavaFx resizable
- 26. JavaFX - JavaFX-Fallback-Class的用途是什麼?
- 27. JavaFX:最新版本的javafx-runtime
- 28. Javafx Robot無法從Javafx 2.2工作
- 29. 在JavaFX中添加AnchorPanes到ScrollPanes Javafx 8
- 30. JavaFX與其他JavaFX項目部署
相關:[調整圖像大小以適合父節點](http://stackoverflow.com/questions/12630296/resizing-images-to-fit-the-父節點)和[在JavaFX中調整窗口大小時如何調整圖像大小](http://stackoverflow.com/questions/22993550/how-to-resize-an-image-when-resizing-the-window-in -javafx) – jewelsea