我正在尝试向Labels
中添加一些GridPane
。
那些Labels
包含ImageView,其中包含一些Images
。
我的图片是.png
图片,尺寸为50 x 50像素。
如果我的GridPane
越来越大,无法在屏幕上显示它,我想调整图像的大小。我正在尝试使用方法setFitWidth
和setFitHeight
。
已剪切:
@Override
public void start(Stage stage) {
GridPane gridPane = new GridPane();
int ySize = 5;
int xSize = 5;
int imageSize = 25;
for(int i=0 ; i<ySize ; i++) {
for(int j=0 ; j<xSize ; j++) {
ImageView imageView = new ImageView(new Image(getClass().getResourceAsStream("path.png")));
imageView.setFitWidth(imageSize);
imageView.setFitHeight(imageSize);
Label label = new Label();
label.setGraphic(imageView);
gridPane.add(label, i, j);
}
}
stage.setScene(new Scene(gridPane));
stage.show();
}
输出看起来不错:
但是,如果imageSize
变小,例如10
,则行之间会出现水平间距:
有什么办法可以删除?我尝试设置标签大小为max-properties:
label.setMaxHeight(imageSize);
label.setMaxWidth(imageSize);
无效。
有什么方法可以消除间距?是因为图片是.png图片吗? 谢谢