java 中怎样删除当前jframe中的一个jpanel 并添加一个新的jpanel
privatevoidinitAcitonListener(){this.menu.add(newJMenuItem("销售管理")).addActionListener...
private void initAcitonListener() {
this.menu.add(new JMenuItem("销售管理")).addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String flag = "xiaoshou";
ChangPanel(flag);
}
});
this.menu.add(new JMenuItem("入库管理")).addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String flag = "ruku";
ChangPanel(flag);
}
});
}
private void ChangPanel(String flag) {
// TODO Auto-generated method stub
if(flag.equals("xiaoshou")){
xiaoshouFrame xiaoshouframe = new xiaoshouFrame();
this.remove(this);
this.add(xiaoshouframe);
this.repaint();
this.setVisible(true);
}
if(flag.equals("ruku")){
RukuFrame rukuFrame = new RukuFrame();
this.remove(this);
this.add(rukuFrame);
this.repaint();
this.setVisible(true);
}
}
}
这是我切换的代码 可是切换不了 谁能教我一下 展开
this.menu.add(new JMenuItem("销售管理")).addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String flag = "xiaoshou";
ChangPanel(flag);
}
});
this.menu.add(new JMenuItem("入库管理")).addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String flag = "ruku";
ChangPanel(flag);
}
});
}
private void ChangPanel(String flag) {
// TODO Auto-generated method stub
if(flag.equals("xiaoshou")){
xiaoshouFrame xiaoshouframe = new xiaoshouFrame();
this.remove(this);
this.add(xiaoshouframe);
this.repaint();
this.setVisible(true);
}
if(flag.equals("ruku")){
RukuFrame rukuFrame = new RukuFrame();
this.remove(this);
this.add(rukuFrame);
this.repaint();
this.setVisible(true);
}
}
}
这是我切换的代码 可是切换不了 谁能教我一下 展开
6个回答
展开全部
干嘛要删除?你把其中的一个先隐藏起来另外一个显示,需要的时候把原来隐藏的显示出来,原来显示的隐藏了不就可以了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
直接把将jpanel加到jframe里面的那段去掉换成其它的就好了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
jframe.remove(jpanel);
jframe.add(newJpanel);
jframe.add(newJpanel);
追问
主要当前是哪个panel不确定 这要怎么删除 用remove(this)这个不管用
追答
remove(this)当然不管用,因为this指代当前对象(类的对象),尤其你还是用this.remove(this)来用的,一看就知道不行咯。
你前面add什么的,这里就remove什么,即那个JPanel的对象。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class test {
/**
* @param args
*/
public static void main(String[] args) {
JFrame f = new JFrame();
JPanel p = new JPanel();
p.add(new JButton("OK"));
f.add(p);
f.setVisible(true);
f.pack();
f.remove(p);
JPanel p2 = new JPanel();
p2.add(new JButton("Button 2"));
f.add(p2);
f.pack();
}
}
import javax.swing.JFrame;
import javax.swing.JPanel;
public class test {
/**
* @param args
*/
public static void main(String[] args) {
JFrame f = new JFrame();
JPanel p = new JPanel();
p.add(new JButton("OK"));
f.add(p);
f.setVisible(true);
f.pack();
f.remove(p);
JPanel p2 = new JPanel();
p2.add(new JButton("Button 2"));
f.add(p2);
f.pack();
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
面板中remove
jframe
jframe
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询