我用它来设置我的缓冲图像的大小。
Dimension imgDim = new Dimension(700, 380);
BufferedImage gridImage = new BufferedImage(imgDim.width, imgDim.height,
BufferedImage.TYPE_INT_RGB);
而不是这个,我想用以下内容设置图像的大小:
Dimension imgDim = d;
BufferedImage gridImage = new BufferedImage(d.width/8, d.height/8,
BufferedImage.TYPE_INT_RGB);
但我得到了negativeArraySizeException
d
是我使用JFrame
方法获得的getMaximumSize()
的维度
当我打印出d.width/8
的值268435455时,我无法理解。是否有其他方法可以帮助
谢谢
答案 0 :(得分:1)
d是我使用
getMaximumSize
()方法获取的JFrame的尺寸
在调用getSize
()方法或pack
()方法后,您可以使用setSize
()方法
答案 1 :(得分:0)
您应该使用getSize()
代替getMaximumSize()
。
如果setPreferredSize
没有JFrame
,getMaximumSize()
将返回一个非常大的数字。见Component.getMaximumSize()
getSize()
会返回JFrame's
当前尺寸