2015-09-25 174 views
2

只是問題(希望)。 是否可以在JavaFX中使用CSS將填充添加到ImageView中?我試過插入,填充等沒有任何運氣。JavaFX圖像填充

或者,也可以將相同的效果添加到文本對象中。 已經探索谷歌並沒有什麼成功,不是一個交易破壞者只是讓事情變得更清潔。

謝謝。

回答

4

-fx-paddingRegion的財產。

ImageView不是地區,因此,您不能直接在ImageView上使用填充。但是,您可以將ImageView放置在區域中以在ImageView周圍提供填充區域。

這裏是一個使用StackPane(這是一個風格能力的區域)的示例。填充在FXML中指定,但同樣適用於CSS。

sample

在樣本圖像周圍的綠色邊框是填充。

<?xml version="1.0" encoding="UTF-8"?> 

<?import java.lang.*?> 
<?import java.util.*?> 
<?import javafx.geometry.*?> 
<?import javafx.scene.image.*?> 
<?import javafx.scene.layout.*?> 
<?import javafx.scene.paint.*?> 

<StackPane id="StackPane" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="-1.0" prefWidth="-1.0" style="-fx-background-color: forestgreen;" xmlns:fx="http://javafx.com/fxml/1" xmlns="http://javafx.com/javafx/2.2"> 
    <children> 
    <ImageView fitHeight="150.0" fitWidth="200.0" pickOnBounds="true" preserveRatio="true"> 
     <image> 
     <Image url="http://www.corwellphotography.net/image/2223982.jpeg" /> 
     </image> 
    </ImageView> 
    </children> 
    <padding> 
    <Insets bottom="10.0" left="10.0" right="10.0" top="10.0" /> 
    </padding> 
</StackPane> 

作爲StackPane或地區可以包含任何類型的節點,該技術同樣適用於任何類型的節點(不只是ImageViews)。