gpt4 book ai didi

java - 如何让 JLabel 在 JFrame 中动态调整大小?

转载 作者:行者123 更新时间:2023-12-02 06:21:13 32 4
gpt4 key购买 nike

我对 Java 比较陌生,所以我什至不确定这是否可行,但是我需要以某种方式让我的 JLabel 随 JFrame 动态调整大小。这可能就像我缺少的一行代码一样简单,但坦率地说,我没有自己解决这个问题所需的经验。

我尝试用谷歌搜索并浏览其他 Stack 帖子,但它们要么通常没有帮助,要么试图让我做类似的事情

class ImagePanel extends JPanel 

或者类似的东西 --> 我不能这样做,因为我已经用其他东西扩展了我的代码。

希望我也能正确地表达我的问题......

为了以防万一,为了澄清,我需要在调整图像周围框架的大小时自动调整图像的大小。

我的代码如下:

public static void ScalingImage() throws IOException
{
MyCollage GP = new MyCollage();
BufferedImage image = ImageIO.read(new File("myCollage_Final.jpg"));
JLabel label = new JLabel(new ImageIcon(image));
JFrame aFrame = new JFrame();
int picwidth = (int)Math.round(aFrame.getWidth());
int picheight = (int)Math.round(aFrame.getHeight());
aFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
aFrame.getContentPane().add(label);
aFrame.pack();
aFrame.setSize(2000, 2000);
aFrame.add(GP);
aFrame.setLocation(0, 0);
aFrame.setVisible(true);
}

所以,如果我明显遗漏了一些东西,我很想知道它是什么。如果它是那么明显的东西,那么...我仍然很想知道它是什么,哈哈。

最佳答案

您可以使用Stretch Icon

图像将自动调整大小以填充标签。您可以控制图像是按比例缩放还是完全填充区域。

使用 StretchIcon 比按照其他链接中的建议进行自定义绘制更灵活,因为您可以从任何支持图标的组件上的自动调整大小中受益。

关于java - 如何让 JLabel 在 JFrame 中动态调整大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34507085/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com