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); }
}
很多代码没写出来,不够位置,弄了一点点上去!谢谢大神们! 展开
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); }
}
很多代码没写出来,不够位置,弄了一点点上去!谢谢大神们! 展开
2个回答
展开全部
JPanel先不要都加入JFrame中,你试试这样行不,当点击第一个的时候,加入p1
add(p1);当点击第二个的时候,删除p1,加入p2,remove(p1);add(p2);你之前不显示,感觉是不是布局的问题。。。。你先这样试试吧,看看行不行
add(p1);当点击第二个的时候,删除p1,加入p2,remove(p1);add(p2);你之前不显示,感觉是不是布局的问题。。。。你先这样试试吧,看看行不行
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你还是用选项卡比较好,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);
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询