框架中重叠的JLabel

时间:2012-04-04 12:45:09

标签: java swing jlabel

我正在Java Swing中编写一个代码,其中在单击按钮时会在框架中添加标签。并添加标签,使其相互重叠以创建像视图一样的堆栈。

我正在使用label.setbouds(x,y,100,100)函数创建自己的布局。 每次在其动作侦听器中单击按钮时,都会添加一个新标签。 例如

 if(e.getSource()==button){
                   label.setBounds(x+5,y+5,100,100);
                   frame.add(label);
                   frame.repaint();
              }

现在的问题是,当这些标签被涂上时,添加的第一个标签始终保留在顶部,新添加的标签被奇数标签所掩盖。

我需要帮助,如果有人可以解释我如何画框架,使新添加的框架在顶部,旧标签重叠。任何建议表示赞赏

此致

ACoder

1 个答案:

答案 0 :(得分:5)

使用正确的索引在JLayeredPane中插入标签。另外,请务必将JLabel设置为不透明(setOpaque(true)),以便它实际上会遮盖下面标签的内容。但是,如果下面的标签大于顶部的标签,您仍会看到其中的一部分