网站首页 > 文章中心 > 其它

java代码自动关闭窗体

作者:小编 更新时间:2023-11-24 12:35:41 浏览量:374人看过

JAVA如何用按钮关闭窗体

很久没有用过界面编程了,就当复习一下了,哈哈

java代码自动关闭窗体-图1

如一楼所说的,给按钮加一个监听器ActionListener,写一个实现方法

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

public class Close extends JFrame implements ActionListener{

JButton close;

public Close(){

close = new JButton("close");//增加一个按钮

add(close);

close.addActionListener(this);//给按钮增加一个监听器

setLayout(new FlowLayout());

setVisible(true);

java代码自动关闭窗体-图2

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

public void actionPerformed(ActionEvent e){

//关闭整个应用程序.如果只是是想关闭当前窗口,可以用

//dispose();

System.exit(0);

public static void main(String[] args){

new Close();

Java怎么实现一个窗口在用户3秒后不进行任何操作的情况下自动关闭啊.最好有例子代码啊,求教了啊!!

单独显示Dialog略奇怪,所以我用JFrame做例子,原理是一样的

import java.awt.event.MouseAdapter;

import java.awt.event.MouseEvent;

import javax.swing.JFrame;

public class DummyTest {

public static void main(String[] args) {

final JFrame frame = new JFrame();

final Thread thread = new Thread(new Runnable() {

public void run() {

while (true) {

try {

frame.dispose();

return;

} catch (InterruptedException e) {}

});

frame.addMouseListener(new MouseAdapter() {

public void mouseClicked(MouseEvent e) {

System.out.println("clicked");

thread.interrupt();

frame.setVisible(true);

thread.start();

java中关闭当前窗口用什么代码

你用的 swing 吗?加上 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

或者加上窗口事件监听器:

addWindowListener(new WindowAdapter() {

public void windowClosing (WindowEvent we) {

dispose();

运行java代码怎样操作显示windowclosed--窗体关闭事件,求解答!!!

效果图

你想要触发的是窗口关闭事件windowClosed, 那么你需要调用dispose方法,对窗口进行销毁.

修改代码如下

public?void?windowClosing(WindowEvent?e)?{

System.out.println("windowClosing--窗体正在关闭事件");

//f.setVisible(false);//隐藏窗口

f.dispose();//销毁窗口--这行代码会触发windowClosed事件

还有其他一些细节的修改,参考下面的代码

import?java.awt.*;

import?java.awt.event.*;

//类名不要写一个小写字母,推荐写一个完整的名词来作为类名

public?class?EventDemo?{

public?static?void?main(String[]?args)?{

Frame?f?=?new?Frame("hello");

//f.setVisible(true);//不要先显示窗口,?先显示了窗口,就看不到"窗口打开事件"了

f.addWindowListener(new?WindowListener()?{

@Override

public?void?windowOpened(WindowEvent?e)?{

System.out.println("windowOpened--窗体打开事件");

public?void?windowIconified(WindowEvent?e)?{

System.out.println("windowIconified--窗体图标化事件");

public?void?windowDeiconified(WindowEvent?e)?{

System.out.println("windowDeiconifie--窗体取消图标化事件");

public?void?windowDeactivated(WindowEvent?e)?{

System.out.println("windowDeactivated--窗体停用事件");

f.dispose();//销毁窗口

public?void?windowClosed(WindowEvent?e)?{

java代码自动关闭窗体-图3

System.out.println("windowClosed--窗体关闭事件");

public?void?windowActivated(WindowEvent?e)?{

System.out.println("windowActivated--窗体激活事件");

f.setVisible(true);//窗口显示

java中关闭窗口的方法

①. package applicationGraphicsInOut;

①.0 }

①.1 class FrameInOut extends Frame implements ActionListener

该程序在Eclipse下运行通过,但是就是不能关不掉!

什么原因呢?

其中有以下几种解决方法:

把main函数改为如下

①. public static void main(String args[])

①.0 });

①.1

这种方法我有点不解,addWindowListener()括号里是怎么回事,我有点纳闷,我还没见过这样的形式,不过我猜可能是实现了java.awt.event.WindowAdapter()类里面的一个抽象方法windowClosing(),但是我真没有见过这种格式,求解释.

在FrameInOut()构造函数里面添加监听函数,添加监听函数之后构造函数如下:

FrameInOut()

{

super("图形界面的Java Application程序");

prompt=new Label("请输入您的名字");

addWindowListener(new HandleWin()); //添加监听函数,引发WindowEvent事件

add(prompt);

add(input);

add(output);

input.addActionListener(this);

其中HandleWin()为内部类,主要实现WindowListener借口,添加监听之后会引发WindowEvent类代表的所以七中事件,具体情况如下:

(1)WINDOW_ACTIVATED:代表窗口被激活(在屏幕的最前方待命).

在WindowEvent类的主要方法有:

public window getWindow();

此方法返回引发当前WindowEvent事件的具体窗口对象,与getSource()方法返回的是相同的事件引用.

HandleWin定义如下:

class HandleWin extends WindowAdapter

public void windowClosing(WindowEvent e)

(e.getWindow()).dispose();

HandleWin是窗口事件的裁剪类WindowAdapter的子类,重载了WindowClosing()方法.

当然也可以这样写HandleWin

①. class HandleWin implements WindowListener

①.0 public void windowActivated(WindowEvent arg0) {

①.1 // TODO Auto-generated method stub

java的GUI编程,如何关闭一个窗体,而不是退出整个程序

JFrame的关闭不像Frame,点关闭按钮自己会关闭,但是那样做不好.可以用setDefaultCloseOperation(int operation);

其中operation有以下几种

DO_NOTHING_ON_CLOSE(在 WindowConstants 中定义):不执行任何操作;要求程序在已注册的 WindowListener 对象的 windowClosing 方法中处理该操作.

HIDE_ON_CLOSE(在 WindowConstants 中定义):调用任意已注册的 WindowListener 对象后自动隐藏该窗体.

DISPOSE_ON_CLOSE(在 WindowConstants 中定义):调用任意已注册 WindowListener 的对象后自动隐藏并释放该窗体.

EXIT_ON_CLOSE(在 JFrame 中定义):使用 System exit 方法退出应用程序.仅在应用程序中使用.

默认情况下,该值被设置为 HIDE_ON_CLOSE.更改此属性的值将导致激发属性更改事件,其属性名称为 "defaultCloseOperation".

以上就是土嘎嘎小编为大家整理的java代码自动关闭窗体相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章