我从数据库中检索一幅图像,该图像需要在尺寸为300的JLabel内放入300.在此代码中,图像不会调整大小,而是其中的一部分显示在JLabel里面:调整图像的大小以适合Jlabel of 300 by 300 px
ResultSet r;
r = s.executeQuery("select * from employee where emp_name='"+user+"'");
boolean v=r.next();
if (v==true) {
add(r.getString("designation"));//to call add function
InputStream is = r.getBinaryStream(3);
BufferedImage bimg = ImageIO.read(is);
bimg.getScaledInstance(300,300,Image.SCALE_SMOOTH);
ImageIcon n=new ImageIcon();
n.setImage(bimg);
l[1].setIcon(n);
}
您也可以看看这个[备选方法](http://stackoverflow.com/a/6916719/1057230),如答案中所述。 –