应用图标时,JavaFX ToggleButton会调整大小

应用图标时,JavaFX ToggleButton会调整大小,javafx,togglebutton,scenebuilder,Javafx,Togglebutton,Scenebuilder,简短说明: 我的切换按钮在应用图像时调整大小 我如何防止这种行为 深入: 我有一个网格布局,里面填充了切换按钮。在代码中,此切换按钮获取一个缓冲区图像以获得皮肤: // Top Left BufferedImage bImage = Thumbnails .of(Watermarker.class.getResourceAsStream("view/img/toggle_top_left.png")) .size(20, 20).asBufferedImage(); Image fxImage

简短说明:

我的
切换按钮
在应用图像时调整大小

我如何防止这种行为

深入:

我有一个网格布局,里面填充了
切换按钮
。在代码中,此
切换按钮
获取一个
缓冲区图像
以获得皮肤:

// Top Left
BufferedImage bImage = Thumbnails
.of(Watermarker.class.getResourceAsStream("view/img/toggle_top_left.png"))
.size(20, 20).asBufferedImage();
Image fxImage = SwingFXUtils.toFXImage(bImage, null);
this.posTopLeft.setGraphic(new ImageView(fxImage));
// Repeated for each Button
无需应用
图像
它的工作原理如下:

对于图像,如图所示

我必须做些什么来防止这种调整

按钮的大小设置为25x25(SceneBuilder) 在代码中,我在分配之前将图标的大小从25x25调整到20x20。

试试看

toggleButton.setStyle("-fx-min-width:25;");


工作完美!这些图标让人觉得它再次调整了大小,但更深入的分析显示:它没有!非常感谢。也无需使用
SwingFXUtils
。您可以使用JavaFXAPI中的标准
Image
toggleButton.minWidthProperty().bind(new SimpleDoubleProperty(25));