当前位置: 首页 > 面试题库 >

如何让JLabel显示在JButton之上?

陈季
2023-03-14
问题内容

我有一个位于JButton顶部的JLabel,但它不会显示在顶部。注释掉JButton的代码后,将显示JLabel,这意味着它在其中,但在底部。有没有办法在JButton的顶部显示JLabel?

任何帮助都是极好的。谢谢!

    import java.awt.*;
    import javax.swing.*;

    public class TestingLabelsOverButtons extends JFrame
    {
        public static void main (String []args)
        {   
            new TestingLabelsOverButtons();
        }

        public TestingLabelsOverButtons()
        {
            super();
            setSize(500,500);
            Container c = getContentPane();
            c.setLayout(null);
            c.setBackground(Color.white);

            JButton button = new JButton("Button");
            button.setBounds(0,0,500,500);
            c.add(button);

            JLabel label = new JLabel("Label");
            label.setBounds(0,0,500,500);
            c.add(label);

          setVisible(true);
        }
    }

编辑:

为了澄清起见,我需要在游戏中使用该按钮,单击该按钮时,按钮上方会显示一个JLabel,以显示添加的“得分”。在我的游戏中,JLabel将比JButton小,因此JButton仍然需要可见。


问题答案:

根据组件的ZOrder摆动绘画组件。基本上,最后添加的组件先绘制。

因此,您可以通过执行以下操作来实现所需的功能:

c.add(button);
c.add(label);

虽然,我同意这些意见。你想做什么?可能有更好的解决方案。使用setBounds()来定位和调整组件的大小几乎从来不是一个好主意。

我的游戏需要此按钮,单击该按钮时,按钮上方会显示一个JLabel,以显示添加的“分数”。

如果要强制用户单击按钮以显示分数,则可能应该使用a JOptionPane来显示标签。否则标签将如何消失?强迫用户单击同一按钮不是一个很好的UI。



 类似资料:
  • 我有一个像这个图像的登录表单。 登录按钮是一个带有图标的JLabel。我想要能够按下“进入”和登录。 我已经将登录逻辑放入名为doAction()的方法中;我在login Label上有一个MouseEvent,它按预期工作,并在任何时候单击login JLabel时调用doAction()。我希望同样的事情发生在任何时候,我按下“回车”。我试过这个: 问题是,只有当我使用PasswordFiel

  • 基本上我有两个账户,SSPUserInput和SSPViewer。我想在SSPUserInput类中按下一个按钮,在SSPViewer中更改一个JLabel名称。这基本上是一个石头剪刀布游戏。这是我第一次在这里发帖,如果我做错了什么,我很抱歉。

  • 问题内容: Java可以显示png,jpg和其他图片格式,但是我必须通过获取文件路径在JLable中显示bmp文件。 ImageIcon支持典型图像。 在我正在工作的项目中,我无法打开bmp文件并以jpg格式存储同一文件,因为我不允许在运行时存储某些内容。我只能将图像保存在内存中。但是我不知道该怎么做。 我怎样才能显示在 ? 谢谢 问题答案: 我发现一些用Java 1.5编写的类,但是您可以轻松更

  • 我试图在GUI中显示卡片,我希望重叠卡片以节省空间。然而,我似乎无法让它发挥作用。我目前正在使用MigLayout,但感觉它更像是一个JLabel问题,而不是其他问题。 要把它描述在一个高水平,考虑在现实生活中玩纸牌游戏。当你正常拿牌时,你只需要看到牌的一部分,因此牌的大部分被另一张牌重叠,以此类推,直到最后一张牌完全显示出来,因为上面没有任何东西。我想重叠的方式,只有一部分卡下面显示,然后顶部的

  • 问题内容: 我希望在JLabel中垂直显示文本,第一个字母在底部,最后一个字母在顶部。这可能吗? 问题答案: 我找到了以下页面:http : //www.java2s.com/Tutorial/Java/0240__Swing/VerticalLabelUI.htm。 我不知道您是否希望字母彼此“站立”或全部旋转。

  • 我正在尝试创建一个程序,在这个程序中,我可以计算2个随机生成的数字,并将它们显示在中。该程序正在中成功显示随机数,但它只计算生成的第一组数字。 我希望它能够计算随机生成的所有数字集。