java 取消关闭窗口_JAVA 关闭当前窗口

我要在NewPanel里面关闭NewJFrame,我在NewPanel里面对取消按钮做了监听,但是我在里面调用newNewJFrame().dispose();屏幕闪烁了下我想窗口时关闭了但是在使用dispose()方法的时候又n...

我要在NewPanel里面关闭NewJFrame,我在NewPanel里面对取消按钮做了监听,但是我在里面调用 new NewJFrame().dispose(); 屏幕闪烁了下 我想窗口时关闭了但是 在使用dispose() 方法的时候 又new 了个 NewJFrame导致又创建了个新对象,哪位帮帮忙啊。 先给20分,解决了再加

public class NewJFrame extends JFrame

{

NewJFrame()

{

setTitle("用户注册");

this.add(new NewPanel());

this.setSize(300,300);

this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

this.setVisible(true);

}

}

class NewPanel extends JPanel

{

NewPanel()

{

JLabel lab1 = new JLabel("请输入用户名:");

final JTextField text1 = new JTextField(10);

Box hbox1 = Box.createHorizontalBox();

hbox1.add(lab1);

hbox1.add(Box.createHorizontalStrut(28));

hbox1.add(text1);

this.add(hbox1);

JLabel lab2 = new JLabel("请输入密码: ");

final JPasswordField text2 = new JPasswordField(10);

Box hbox2 = Box.createHorizontalBox();

hbox2.add(lab2);

hbox2.add(Box.createHorizontalStrut(29));

hbox2.add(text2);

this.add(hbox2);

JLabel lab3 = new JLabel("请再次输入密码:");

final JPasswordField text3 = new JPasswordField(10);

Box hbox3 = Box.createHorizontalBox();

hbox3.add(lab3);

hbox3.add(Box.createHorizontalStrut(15));

hbox3.add(text3);

this.add(hbox3);

JLabel lab4 = new JLabel("请输入开户金额:");

final JTextField text4 = new JTextField(10);

Box hbox4 = Box.createHorizontalBox();

hbox4.add(lab4);

hbox4.add(Box.createHorizontalStrut(15));

hbox4.add(text4);

this.add(hbox4);

JButton btn = new JButton("确定");

btn.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e)

{

}});

JButton btn1 = new JButton("取消");

btn1.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e)

{

!!!!这里应该写什么?

}});

Box hbox5 = Box.createHorizontalBox();

hbox5.add(btn);

hbox5.add(Box.createHorizontalStrut(25));

hbox5.add(btn1);

this.add(hbox4);

Box vbox = Box.createVerticalBox();

vbox.add(Box.createVerticalStrut(20));

vbox.add(hbox1);

vbox.add(Box.createVerticalStrut(10));

vbox.add(hbox2);

vbox.add(Box.createVerticalStrut(10));

vbox.add(hbox3);

vbox.add(Box.createVerticalStrut(10));

vbox.add(hbox4);

vbox.add(Box.createVerticalStrut(20));

vbox.add(hbox5);

this.add(vbox);

}

}

这个是个子窗口,按下取消关闭当前窗口, 不用 System.exit(0);

我觉得这里主要的问题就是在不能创建对象实例的情况下调用非静态的dispose() 函数,但这样是不能实现的。

谁有其他的方法关闭当前窗口,而不结束住程序?

展开

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值