Java中JFrame中我想点击不同菜单项的显示不同模板,为什么老是不行!!??

我点击第一个就可以,点别的就不可以,哪里出错了?我用的是setVisible();JPanelp1=newJPanel();JPanelp2=newJPanel();JM... 我点击第一个就可以,点别的就不可以,哪里出错了?我用的是setVisible();
JPanel p1 = new JPanel(); JPanel p2 = new JPanel();
JMenuItem function1,function2;
JMenuBar menubar;//菜单条JMenu menu;//菜单
void init{
menubar = new JMenuBar();menu = new JMenu("显示");
function1 = new JMenuItem("显示一");
function2 = new JMenuItem("显示二");
menu.add(function1);menu.add(function2);
menu.addSeparator();menubar.add(menu);setJMenuBar(menubar);
JLabel mb1 = new JLabel("模板一:"); p1.add(mb1); information1 = new JTextField(5); p1.add(information1);
JLabel mb2= new JLabel("模板二:"); p2.add(mb2); score1 = new JTextField(5); p2.add(score1);
add(p1);
add(p2);
function1.addActionListener(this);
function2.addActionListener(this);
}
public void actionPerformed(ActionEvent e) { if (e.getSource()==function1) { p1.setVisible(true);p2.setVisible(false); }else if (e.getSource()==function2) { p1.setVisible(false);p2.setVisible(true); }
}
很多代码没写出来,不够位置,弄了一点点上去!谢谢大神们!
展开
 我来答
武林第一帅哥
2014-06-10 · 超过38用户采纳过TA的回答
知道小有建树答主
回答量:145
采纳率:0%
帮助的人:49万
展开全部
JPanel先不要都加入JFrame中,你试试这样行不,当点击第一个的时候,加入p1
add(p1);当点击第二个的时候,删除p1,加入p2,remove(p1);add(p2);你之前不显示,感觉是不是布局的问题。。。。你先这样试试吧,看看行不行
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
302652034_bai
2014-06-10 · TA获得超过4145个赞
知道大有可为答主
回答量:2206
采纳率:66%
帮助的人:1532万
展开全部

你还是用选项卡比较好,JTabbedPane

JTabbedpaen sele=new JtabbedPane();
JPanel j1=new JPanel();
JPanel j2=new JPanel();
sele.addTab("TITLE 1",j1);
sele.addTab("TITLE 2",j2);

JFrame.setContentPane(sele);
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式