2017-02-04 3 views
1

(JavaFX FXML) Я в настоящее время использую конструктор сцен, чтобы сделать приложение, и я пытаюсь создать пользовательскую кнопку, мне удалось получить изображение на кнопке, но я не могу понять, как получить изображение полностью заполните кнопку. есть идеи? O, если есть альтернативный способ создания пользовательской кнопки, которая также будет полезна!(JavaFX FXML) При попытке создать пользовательскую кнопку, как мне получить изображение, чтобы полностью заполнить кнопку?

Вот мой FXML код:

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

<?import javafx.scene.control.Button?> 
<?import javafx.scene.image.Image?> 
<?import javafx.scene.image.ImageView?> 
<?import javafx.scene.layout.AnchorPane?> 


<AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1"> 
    <children> 
     <Button layoutX="165.0" layoutY="125.0" mnemonicParsing="false" prefHeight="150.0" prefWidth="270.0"> 
     <graphic> 
      <ImageView fitHeight="150.0" fitWidth="200.0" pickOnBounds="true" preserveRatio="true"> 
       <image> 
        <Image url="@case.png" /> 
       </image> 
      </ImageView> 
     </graphic> 
     </Button> 
    </children> 
</AnchorPane> 

изображение вписывается в кнопку, однако я хочу, чтобы полностью заполнить кнопку, или если есть какие-либо различные способы, которые были бы оценены !!!

благодарим вас заранее!

PS: Я использую Scene Builder, любые полезные советы для этого приложения будет очень полезно, а также

+0

Поиск примеров CSS, что это лучший подход ко мне – Sedrick

ответ

1

Если я правильно понял вы не хотите видеть кнопку границы и цвет на всех. Вы можете настроить кнопку с помощью такой CSS:

.fill-btn { 
-fx-graphic: url("@case.png"); 
-fx-background-color: inherit; 
-fx-opacity: inherit; 
-fx-border: none; 
} 

и объявить его в FXML:

<AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1"> 
<children> 
    <Button stylesheets="@buttons-style.css" styleClass="fill-btn" layoutX="165.0" layoutY="125.0" mnemonicParsing="false" prefHeight="150.0" prefWidth="270.0"> 
    </Button> 
</children> 

+0

Извините, если я неправильно, но я думаю, что он пытается адаптировать размер изображения к размеру кнопки «Button», в вашем примере это наоборот, «Button» будет иметь тот же размер, что и изображение! –

Смежные вопросы