有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java使用JLabel向JFrame添加背景图像

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


共 (1) 个答案

  1. # 1 楼答案

    有几种选择:

    1. 使JLabel不透明并使其成为contentPane,给它一个体面的布局,给它一个体面的getPreferredSize()覆盖,这在您的问题的上下文中是有意义的(JLabel自己对这个方法的覆盖对您不起作用,因为它依赖于标签所包含的文本和图标,而不是添加的组件)
    2. 然后将其他组件添加到JLabel中

    或:

    1. 使用JPanel作为背景图像显示器
    2. 在其paintComponent(...)方法覆盖中显示图像
    3. 给它一个像样的布局管理器,如果需要,可以使用getPreferredSize()覆盖

    此外:

    • 请注意,某些添加的组件(如其他JPanel)被设置为非不透明