「java删除jpanel」java删除目录
本篇文章给大家谈谈java删除jpanel,以及java删除目录对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
java怎么清除JPanel里面所有组件并重绘
用removeAll()方法,JPanel是javax.swing.JComponent的子类,而
javax.swing.JComponent又是java.awt.Container的子类,Container中有removeAll()方法,基本上所有容器都可以使用removeAll()方法.
java中JPanel如何删除?
看情况。如果多次dosomething方法,那new MyPanel( int p, int q)将是一块垃圾内存,只有最后一次引用的new MyPanel( int p, int q); 才是被作且的。规则如:
MyPanel mypanel;
mypanel = new MyPanel( int p, int q); 第一次调用dosomething
mypanel = new MyPanel( int p, int q); 第二次调用dosomething,第一次引用的new MyPanel没有被作用
mypanel = new MyPanel( int p, int q); 第三次调用dosomething,第一次和第二次的new MYPanel没有被作用。
。。。。。。。。。。。。
没有被引用的内存将是垃圾,系统自动收回。。
代码:system.gc()回收。
java 中怎样删除当前jframe中的一个jpanel 并添加一个新的jpanel
答: JFrame中, 可以通过 jframe.remove(组件) 方法删除指定的组件 ,也可以通过jframe.add(组件) 方法来添加新的组件 . 值得注意的是,添加和删除组件之后,都需要更新窗口 , 否则可能显示异常
效果图
jp1 里输入用户名, 不能为空
jp1里输入了用户名
jp1被删除,然后显示jp2
参考代码
import javax.swing.*;
import java.awt.event.*;
public class PanelFrame extends JFrame implements ActionListener {
JPanel jp1, jp2;
JTextField jtf;
JButton jb1;
JLabel jl2;
public PanelFrame() {
jp1 = new JPanel();
JLabel jl1 = new JLabel("请输入用户名");
jtf = new JTextField(8);
jb1 = new JButton("确定");
jb1.addActionListener(this);
jp1.add(jl1);
jp1.add(jtf);
jp1.add(jb1);
add(jp1);
// 窗口属性设置
setTitle("Demo");// 标题
setSize(380, 180);// 窗口大小
setLocationRelativeTo(null);// 窗口居中
setDefaultCloseOperation(EXIT_ON_CLOSE);// 窗口点击关闭时,退出程序
}
public static void main(String[] args) {
new PanelFrame().setVisible(true);
}
@Override
public void actionPerformed(ActionEvent e) {
if(jb1==e.getSource()) {
String name = jtf.getText().trim();
if(name.equals("")) {//验证是否输入了有效的字符串
JOptionPane.showMessageDialog(this, "请输入用户名~!");
return;
}
remove(jp1);//删除jp1
jp2 = new JPanel();
jl2 = new JLabel();
jp2.add(jl2);
jl2.setText("欢迎:"+name);
add(jp2);//添加jp2
SwingUtilities.updateComponentTreeUI(this);//更新窗口!!
}
}
}
关于java删除jpanel和java删除目录的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。