java swing中的JLayeredPane分层面板的问题。。

我在JFrame中就添加一个分层面板,不添加JPanel的时候加到分层面板上的组件可以分层放置并显示出来可是当我再向JFrame里面添加一个JPanel和分层面板的时候,... 我在JFrame中 就添加一个分层面板,不添加JPanel的时候 加到分层面板上的组件可以分层放置并显示出来
可是当我再向JFrame里面添加一个JPanel 和分层面板的时候 ,加到分层面板的组件就显示不出来了。。
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class Laypane {

public static void main(String[] args) {
new Laypanel();
}

}
class Laypanel extends JFrame{
Laypanel(){
JPanel pane2=new JPanel();//普通面板
JButton btn3=new JButton("deng ");
pane2.add(btn3);
JLayeredPane pane=new JLayeredPane();//分层面板
JButton btn1=new JButton("确定");
JButton btn2=new JButton("取消");
pane.add(btn1, ( Integer)(JLayeredPane.PALETTE_LAYER+50));
pane.add(btn2,( Integer)(JLayeredPane.PALETTE_LAYER+50));
btn1.setBounds(30, 50, 80, 80);
btn2.setBounds(50, 80, 80, 80);
this.add(pane);//向窗口添加分层面板
this.add(pane2);//向窗口添加普通面板
this.setBounds(100, 100, 500, 300);
this.setVisible(true);
this.validate();
}
}
展开
 我来答
匿名用户
推荐于2016-09-15
展开全部
class Laypanel extends JFrame {
Laypanel() {
JPanel pane2 = new JPanel();// 普通面板
JButton btn3 = new JButton("deng ");
pane2.add(btn3);
JLayeredPane pane = new JLayeredPane();// 分层面板
JButton btn1 = new JButton("确定");
JButton btn2 = new JButton("取消");
pane.add(btn1, (Integer) (JLayeredPane.PALETTE_LAYER + 50));
pane.add(btn2, (Integer) (JLayeredPane.PALETTE_LAYER + 50));
btn1.setBounds(30, 50, 80, 80);
btn2.setBounds(50, 80, 80, 80);

// 这样满意了不?
JPanel pnlMain = new JPanel(new GridLayout());
pnlMain.add(pane);
pnlMain.add(pane2);
this.add(pnlMain);

// this.add(pane);// 向窗口添加分层面板
// this.add(pane2);// 向窗口添加普通面板
this.setBounds(100, 100, 500, 300);
this.setVisible(true);
this.validate();
}
ratstar
推荐于2018-05-09 · TA获得超过496个赞
知道小有建树答主
回答量:648
采纳率:0%
帮助的人:598万
展开全部
应该是pane被pane2覆盖了。一个Frame最多只能加一个Panel对象,最如你用LayeredPanel,最好把其它的层加到LayeredPanel上,而不是直接加到Frame上。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Dmw03591205
2018-05-22 · TA获得超过172个赞
知道答主
回答量:555
采纳率:31%
帮助的人:75.7万
展开全部
这是因为JFrame默认是中心格局,即每个组件都是中心排列,下一个会覆盖上一个,你这个里面有两个组件PANE2和PANE,你可以设置一下JFrame的布局不就可以了吗,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式