使用JLabel将背景图像添加到JFrame

时间:2015-08-21 13:56:31

标签: java swing user-interface background-image jlabel

我使用JLabel将背景图像添加到JFrame。但是在特定的JFrame中添加了一个面板中的其他JLabel。在JFrame上添加此背景图像后,其他JLabel不可见。如何让它们可见?

1 个答案:

答案 0 :(得分:2)

有几个选择:

  1. 让JLabel变得不透明并使其成为contentPane,给它一个不错的布局,给它一个不错的getPreferredSize()覆盖,在你的问题的上下文中是有道理的(JLabel自己的覆盖方法赢了& #39; t为你工作,因为它取决于标签所保留的文本和图标,而不是添加的组件。
  2. 然后将其他组件添加到JLabel。
  3. 或者:

    1. 使用JPanel作为背景图像显示器
    2. paintComponent(...)方法覆盖显示图像。
    3. 为其提供合适的布局管理器,如果需要,还可以getPreferredSize()覆盖。
    4. 此外:

      • 注意一些添加的组件(例如其他JPanel)设置为非不透明。