解决方案只使用fxml
正如tarrsalah指出的那样,css是推荐的方法,但是如果您愿意,也可以在fxml中执行此操作:
要在SceneBuilder中获得上述内容,请在Button的顶部拖动一个ImageView,它将自动设置为按钮的图形。然后选择ImageView,然后在SceneBuilder属性窗格中的ImageView图像字段中输入图像的URL。
在SceneBuilder中打开上述fxml,查看下面的图片。
备用css属性
替代css到-fx-background *属性。
> -fx-graphic
> -fx-padding
> -fx-content-display
> -fx-graphic-text-gap
这些只是不同的,不一定比你想要做的更好。这只是一个喜欢使用的东西。我发现这些设置比-fx-background *设置更容易使用。它们更具限制性,但语法和选项比我更容易理解,其含义映射到用于Labeled的JavaDoc API。
这里有一个样式设置了嵌入在fxml中的图形,尽管总是更好地将样式信息分离成一个单独的css样式表,如tarrsalah的样本。
将图像添加到仅使用Java代码的按钮的相关解决方案