JavaFX(ImageView | CSS背景图像)按钮错误
在可调整大小的JavaFX场景中设置按钮的背景图像时遇到问题。将窗口调整到一定大小时,背景图像似乎会淡出。在按钮中使用ImageView以及通过CSS设置背景图像时会出现问题 我在YouTube上上传了一段视频进行演示: 调整窗口大小时,可以看到背景图像消失。 该漏洞在Windows和Linux下是可复制的 这似乎只发生在一些png图标上 这是调整窗口大小时的情况,当窗口向右增大时,右按钮中的图像从按钮区域向左移动。只有右侧按钮受影响,左侧按钮不受影响: 以下是FXML:JavaFX(ImageView | CSS背景图像)按钮错误,css,user-interface,button,javafx,imageview,Css,User Interface,Button,Javafx,Imageview,在可调整大小的JavaFX场景中设置按钮的背景图像时遇到问题。将窗口调整到一定大小时,背景图像似乎会淡出。在按钮中使用ImageView以及通过CSS设置背景图像时会出现问题 我在YouTube上上传了一段视频进行演示: 调整窗口大小时,可以看到背景图像消失。 该漏洞在Windows和Linux下是可复制的 这似乎只发生在一些png图标上 这是调整窗口大小时的情况,当窗口向右增大时,右按钮中的图像从按钮区域向左移动。只有右侧按钮受影响,左侧按钮不受影响: 以下是FXML: <?xml
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.geometry.*?>
<?import javafx.scene.control.*?>
<?import javafx.scene.image.*?>
<?import java.lang.*?>
<?import javafx.scene.layout.*?>
<AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="288.0" prefWidth="862.0" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1">
<children>
<BorderPane layoutX="45.0" layoutY="20.0" minHeight="100.0" minWidth="200.0" prefHeight="200.0" prefWidth="200.0" AnchorPane.bottomAnchor="10.0" AnchorPane.leftAnchor="10.0" AnchorPane.rightAnchor="10.0" AnchorPane.topAnchor="10.0" HBox.hgrow="ALWAYS">
<bottom>
<HBox alignment="TOP_RIGHT" BorderPane.alignment="CENTER">
<children>
<Button mnemonicParsing="false" prefHeight="24.0" prefWidth="50.0" styleClass="googlebutton" stylesheets="@style.css">
<HBox.margin>
<Insets right="5.0" />
</HBox.margin>
</Button>
<Button mnemonicParsing="false" text="Button" />
<Button mnemonicParsing="false" prefHeight="24.0" prefWidth="50.0" styleClass="iconbutton" stylesheets="@style.css">
<HBox.margin>
<Insets left="5.0" />
</HBox.margin></Button>
</children>
<BorderPane.margin>
<Insets top="5.0" />
</BorderPane.margin>
</HBox>
</bottom>
<center>
<ListView prefHeight="200.0" prefWidth="200.0" BorderPane.alignment="CENTER" />
</center>
<top>
<Label text="List" BorderPane.alignment="TOP_LEFT">
<BorderPane.margin>
<Insets bottom="5.0" />
</BorderPane.margin>
</Label>
</top>
<HBox.margin>
<Insets left="20.0" />
</HBox.margin>
</BorderPane>
</children>
</AnchorPane>
以前有没有其他人遇到过这样的问题
谢谢,
Jan不要链接到非现场zip文件中的代码。编辑您的问题,使其包含内联代码。这似乎是一个缩放问题。将图标的大小从512*512调整到32*32以显示为24*24后,它就可以工作了。现在我花时间完成了您的代码并进行了尝试,我对在Win7上使用Java 8u40可以工作感到相当失望。真是浪费时间。。。关于您的问题,您可以尝试其他css大小选项,而不仅仅是像素定义。
.iconbutton {
-fx-background-image: url("http://s28.postimg.org/5nsybhb65/round57.png");
-fx-background-size: 24,24;
-fx-background-repeat: no-repeat;
}
.googlebutton {
-fx-background-image: url("https://www.google.de/images/google_favicon_128.png");
-fx-background-size: 24,24;
-fx-background-repeat: no-repeat;
}