(JavaFX 8)图形顶部的按钮文本
我使用CSS将图像设置为按钮,如下所示(示例): 现在图片已经包含了按钮文本,但我发现这很不雅观,因为每次有一个新的按钮有不同的文本时,我都必须创建一个新的按钮图形。通过代码设置按钮的文本(如(JavaFX 8)图形顶部的按钮文本,java,css,button,javafx-8,Java,Css,Button,Javafx 8,我使用CSS将图像设置为按钮,如下所示(示例): 现在图片已经包含了按钮文本,但我发现这很不雅观,因为每次有一个新的按钮有不同的文本时,我都必须创建一个新的按钮图形。通过代码设置按钮的文本(如mybutton.setText(“text”);)仅显示按钮旁边的文本 使用-fx背景图像:url(“myurl”)显示奇怪的平铺图像,而不是按原始大小缩放的单个图像。手动设置大小也很不方便 在我看来,在图像和按钮之间使用窗格也不是很优雅。我真的希望有一个更好更简单的解决方案 在这种情况下有什么建议吗?您
mybutton.setText(“text”);
)仅显示按钮旁边的文本
使用-fx背景图像:url(“myurl”)节点的代码>显示奇怪的平铺图像,而不是按原始大小缩放的单个图像。手动设置大小也很不方便
在我看来,在图像和按钮之间使用窗格也不是很优雅。我真的希望有一个更好更简单的解决方案
在这种情况下有什么建议吗?您可以使用-fx background repeat
和-fx background size
属性避免背景图像的平铺:
#button-id {
-fx-background-image: url("/main/img/mybutton.png");
-fx-background-repeat: no-repeat;
-fx-background-size: contain;
...
}
另外,除了使用堆叠窗格
将图像和文本作为子对象作为图形进行堆叠外,没有其他方法可以将图像与文本堆叠在一起,这是使用CSS无法完成的。我完全错过了这些属性,非常感谢您!
#button-id {
-fx-background-image: url("/main/img/mybutton.png");
-fx-background-repeat: no-repeat;
-fx-background-size: contain;
...
}