【问题标题】:Resizing JLabel to full screen size? [duplicate]将 JLabel 调整为全屏大小? [复制]
【发布时间】:2014-08-03 19:03:49
【问题描述】:

我有一个 JLabel。

JLabel background=new JLabel(new ImageIcon("C:/CraftBukkit/background.png"));

        add(background);

        background.setLayout(new FlowLayout());

问题是,如何拉伸/收缩此图像以使其始终与屏幕大小相同?目前,它要么太大,要么太小,或者与屏幕尺寸相比尺寸不合适。

我在互联网上找不到任何解决方案。

谢谢!

【问题讨论】:

  • 您想知道如何调整标签图标的大小以使其符合容器的要求吗?首先,JLabel 在大小更改时不会调整图标大小,其次,要调整图像大小,您有许多可能的选择,如两个链接示例(以及我在 cmets 中链接的其他示例)中列出的那样

标签: java swing jframe fullscreen jlabel


【解决方案1】:

首先你需要一个未装饰的 JFrame;那是一个没有标题栏的 JFrame,并使其最大化。

对于没有工具栏的屏幕尺寸,您可能希望使用附加的第一个显示器的尺寸。

在 JFrame 构造函数中

setUndecorated(true);
setExtendedState(JFrame.MAXIMIZED_BOTH);
JPanel background = new JPanel();
JLabel label = new JLabel(...);
// maybe setHGap(0); gap between icon and text
panel.add(label);
add(panel);

【讨论】:

  • JLabel 不会调整标签的大小以满足容器的要求
  • 虽然这不是我想要的,但您的其中一行代码通过消除问题间接解决了问题。可能仍在寻找更有效的解决方案,但现在这将非常完美。谢谢! :)
猜你喜欢
  • 2015-07-17
  • 1970-01-01
  • 1970-01-01
  • 2014-03-23
  • 1970-01-01
  • 1970-01-01
  • 2014-09-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多