当前位置: 首页 > 知识库问答 >
问题:

我可以让带有图标图像的JLabel可调整大小吗?

杜俊楚
2023-03-14

就像我们可以调整jframe的大小一样,我想在一个框架上显示一个图像。我希望它是可调整的,所以当我调整大小时,图像应该调整大小。

try {
    myPicture = ImageIO.read(f);
    picLabel.setIcon(new ImageIcon(myPicture));
    panel.add(picLabel);
} catch (IOException e) {
    e.printStackTrace();
}

共有1个答案

欧阳翔
2023-03-14

ImageIcons总是可调整大小的。尝试将其转换为图像,调整其大小,将其转换回ImageIcon,然后重新应用它(当然,当您希望调整其大小时,请执行此操作)。

Image myScaledPicture = myPicture.getImage().getScaledInstance(newWidth, newHeight, Image.SCALE_SMOOTH);
picLabel.setIcon(new ImageIcon(myScaledPicture);

更多信息在这里:如何调整JLabel ImageIcon的大小?

 类似资料:
  • 问题内容: 我正在尝试从目录加载图像并将其作为图标放置在中。但是,当图像尺寸很大时,就不能完全放入标签中。我尝试调整图像的大小以适合标签,但无法正常工作。我可以知道我要去哪里了吗? 问题答案: BufferedImage img = ImageIO.read(…); Image scaled = img.getScaledInstance(500, 500, Image.SCALE_SMOOTH)

  • 我试图通过反复更改上的图标来创建一个动画(旋转文本)。问题是这些图像的大小不相同,当它们大于第一个图像的大小时,它们就会被裁剪。 解决这一问题的一种方法是为设置PreferredSize以便所有图像都适合--但我想一定有一种方法可以直接调整包含的的大小? 在下面的代码中,我还尝试将全部删除,创建一个新的jlabel,然后添加新的jlabel,但效果是一样的。 整个面板将在一个applet中使用。

  • 问题内容: 我正在尝试使图片适合JLabel。我希望将图片尺寸减小到更适合我的Swing JPanel。 我尝试使用setPreferredSize,但是它不起作用。 我想知道是否有一种简单的方法?我应该为此缩放图像吗? 问题答案: 大纲 这是要遵循的步骤。 将图片读取为BufferedImage。 将BufferedImage的大小调整为另一个JLabel大小的BufferedImage。 从调

  • 我正在尝试使图片适合JLabel。我希望将图片尺寸缩小到更适合我的Swing JPanel的尺寸。 我尝试使用setPreferredSize,但它不起作用。 我在想有没有一个简单的方法来做这件事?我应该为此缩放图像吗?

  • 当我将图像加载到标记的icon属性中时,它将以原始大小显示,而原始大小比应该的大得多。 我想把尺寸调整到标准尺寸,调整到更小的尺寸。做这件事最好的方法是什么? 代码:

  • 我有一个尺寸为800x800的图像,其大小为170 kb。我想将此图像调整为600x600。调整大小后,我希望缩小图像大小。我该怎么做?