java中要关闭窗口不退出程序 但用this.dispose();为什么没有反应啊????急!!!!

作者&投稿:鄣显 (若有异议请与网页底部的电邮联系)
java 程序无法关闭窗口!用dispose()无效~

改成这样,你看看:

import java.awt.BorderLayout;
import java.awt.Dimension;
import javax.swing.*;
import java.awt.event.*;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
import javax.xml.ws.Dispatch;

public class Progress_bar extends JFrame implements ActionListener
{
private static final long serialVersionUID = -2543187469376323631L;
//ActionListener ,ChangeListener是 2个实现进度条的 接口
private JPanel panel;
private Timer timer;
private JButton btn;
private JProgressBar pgb;
private JLabel label;
JFrame frame;
public void init()
{
panel = new JPanel();
btn = new JButton("start");
btn.addActionListener(this);
panel.add (btn,BorderLayout.CENTER);

timer = new Timer(1,this);//控制进度条速度

pgb = new JProgressBar();//可视化进度条(显示进度条)
pgb.setOrientation (JProgressBar.HORIZONTAL);
pgb.setMaximum (100);//显示已完成多少(到多少)
pgb.setMinimum (0);//显示已完成多少(从多少开始)
pgb.setValue (0);//将进度条的当前值设置为 0
pgb.setStringPainted (true);//设置 stringPainted 属性的值,
//该属性确定进度条是否应该呈现进度字符串。
pgb.setPreferredSize (new Dimension(400,80));
//Dimension 类封装单个对象中组件的宽度和高度(好像没什么 用)

label = new JLabel("正在启动QQ...");//创建一个标示(用于显示进度文字的显示)

frame = new JFrame("test");
frame.add (panel,BorderLayout.SOUTH);
frame.add (pgb,BorderLayout.CENTER);
frame.add (label,BorderLayout.NORTH);
frame.setBounds(450, 300, 350, 100);//设置窗体长和宽
frame.setVisible (true);//显示窗体
frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);//关闭有效
}
public static void main(String args[])
{
new Progress_bar().init (); //执行 程序
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource ()==btn)
{
timer.start ();

}
if(e.getSource ()==timer)
{

int value = pgb.getValue () ;
if(value<100)
{
value++;
pgb.setValue (value);
}
if(value ==100)
{

timer.stop ();
pgb.setValue (0);
frame.setVisible(false);
frame.dispose();
}

}
}

}

在你定义的关闭窗口事件中写上
窗口名.dispose();
如果是直接继承的窗口类,可以用this.dispose()
这个就是释放当前窗口资源而不终止程序 ,与serVisible(false)是不一样的

前面不用加this.
你应该是弹出窗体之后才关闭窗体。
意思就是先调用新窗体的方法,后面写dispose();
这样就直接关闭原窗体了。

望采纳。

this.dispose()是指当前类的实例,如果你用在内部类中,效果是卸载当前类实例。你应该使用窗口类的类名.this.dispose()


setVisible(false);
试一下。
这个是设置窗体显隐的。

this.dispose(); 不要写在匿名类中——有可能这样的情况。


打开AVA为什么会弹出窗口
又是这个问题,我都回答了5个了,原因是你的输入法不对路,你要去下载一个搜狗的输入法,反正腾讯的就行!

玩战地之王(AVA)时,CPU使用率100%
要解决此问题,我们可以通过修改注册表来解决:在 注册表编辑器 中依次展开[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\lanmanserver ]分支,在右侧窗口中 新建 一个名为“maxworkitems”的 DWORD值 。然后双击该值,在打开的窗口中键入下列数值并保存退出:如果计算机有512MB以上的内存,键入“1024”;如果计算机...

AVA进不去,出来了个窗口是什么意思?
内存问题,内存到了顶峰了,建议加到4g内存,或者加虚拟内存(只是缓兵之计),要么就忍着吧

战地之王进去怎么会弹出个小窗口点了就没了
楼主你好.出现这种情况有很多.比如.1.可能是你电脑的硬件配置达不到AVA的要求,建议你去官网检测你的硬件配置。2.如果配置达到要求的话,可能是你系统正在运行的程序跟AVA发生冲tu(突),或者现有的程序占用过多的系统资源,请关闭其他无关应用程序,保持系统稳定。3.在游戏过程中尽量不要切换(alt+...

AVA怎么窗口
楼主您好,AVA暂不支持窗口化。CF是可以窗口化,只要改分辨率就行了,但AVA改分辨率是没用的。

求AVA战地之王死机问题和解决办法.
二、电源电压不稳,电源功率不足,更换质量高的功率大的电源。三、清理磁盘和整理磁盘碎片。1、在我的电脑窗口,右击要清理的盘符—“属性”—“清理磁盘”--勾选要删除的文件--确定--是。2、清除临时文件,开始—运行—输入 %temp% --确定。3、用优化大师或超级兔子清理注册表和垃圾文件。4、关...

为什么AVA弹出出这个窗口
给你三个选择:1重新登录,2重启机子3重新安装。上面那个框写全应是:message

你ava那个问题怎么解决的??我也弹出那个窗口\/\/
是你的电脑配置不行这个图里的配置CPU不用考虑一般双核的也能玩.主要是看显卡必须要独立的显卡集成的很容易出问题最好是大于7600GT内存也最好大于1024。想查看配置在游戏登陆界面后有个配置检测睇你那里就会出现我发的这个图.如果我的回答能解决你的问题请采纳谢谢....

AVA进不去
你的情况可能是:1、如果是服务器连不上,有可能是你的网络有问题。2、有可能是客户端出了问题,你下载安装了好几遍的话,请问你在下载的时候有没有暂停过。(建议下载时别暂停)3、请检查驱动。4、请保证电脑运行的进程是否过多,有可能会造成CPU承受不了。5、内存。以上是给你的帮助,希望能帮...

微信上的AVA云直播电脑上怎么播放?
在微信上观看AVA云直播时,电脑上播放的方法相对简单。首先,确保你的电脑已经安装了微信客户端,并且登录了你的微信账号。接下来,按照以下步骤操作即可:首先,在电脑上打开微信客户端,确保你已经登录了自己的微信账号。然后,找到包含AVA云直播的微信公众号或者聊天窗口。通常,直播链接会以图文消息的形式...

灵山县13170901643: JAVA 关闭窗体而不退出程序 -
守朋骁悉: (yorn==JOptionPane.NO_OPTION){ this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); System.exit(0); }

灵山县13170901643: JAVA如何退出全屏,但不退出程序 -
守朋骁悉: 给你PM了~~,这个程序将全屏显示随机色,每隔一秒换一次颜色,鼠标点击后退出全屏,但不退出程序,要想退出程序,等退出全屏后右击任务栏中的图标选择关闭就行了

灵山县13170901643: java中要关闭窗口不退出程序 但用this.dispose();为什么没有反应啊????急!!!! -
守朋骁悉: this.dispose()是指当前类的实例,如果你用在内部类中,效果是卸载当前类实例.你应该使用窗口类的类名.this.dispose()

灵山县13170901643: java中如何关闭一个窗口就完全释放它所占的资源但不终止整个程序(程序由多个窗口) -
守朋骁悉: 根据Java的垃圾回收机制:垃圾回收回收的是无任何引用的对象占据的内存空间 所以你只要采用匿名类创建打开的窗口并调用System.gc() 或Runtime.getRuntime().gc() 就可以啦 在要创建窗口的地方这样写:new frame().setVisible(true); System.gc() ; 当你再次打开同样的窗口时,又会执行new frame().setVisible();重新创建一个新的窗口,原来的自然就变成无任何引用的对象了,随即就会被JVM垃圾回收机制回收掉了 注意:调用System.gc()用于显式通知JVM可以进行一次垃圾回收,但真正垃圾回收机制具体在什么时间点开始发生动作是不可预料的

灵山县13170901643: java点击关闭按钮,程序未退出 -
守朋骁悉: 在该窗体的构造函数中写 this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 或者使用: 窗体对象.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

灵山县13170901643: java中,怎么关闭一个JRame,不是退出整个程序. -
守朋骁悉: 似乎你要是不写这个方法,就会执行默认关闭,默认关闭程序是不会关闭的,只是窗口关闭了.

灵山县13170901643: java,swing编程中如何关闭窗体,而不是退出程序! -
守朋骁悉: 隐藏试试JFrame.setVisible(false)

灵山县13170901643: java swing 怎么实现按钮关闭窗口但不关闭主程序,或者让按钮拥有窗口右上角红叉一样的作用 -
守朋骁悉: 什么意思?就是点击按钮就等于点红叉吗? 添加监听 setvisible(false) 完事 但是如果你隐藏了所有窗口 又没有其他关闭事件 那程序就只能强制结束了

灵山县13170901643: java的GUI编程,如何关闭一个窗体,而不是退出整个程序
守朋骁悉: Frame,Window,JDialog,JFrame等窗体用dispose()关闭并释放资源;JOptionPane可以不用考虑,本身就有.

灵山县13170901643: java在windowclosing事件中怎样不关闭窗口 -
守朋骁悉: 1 调用JFrame的setDefaultCloseOperation(),设置关闭模式为DO_NOTHING_ON_CLOSE(就是默认关闭效用减半,仅触发WindowListener中的windowClosing方法)2 弹对话框,确认关闭后,添加JFrame的dispose()

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网