bl双性强迫侵犯h_国产在线观看人成激情视频_蜜芽188_被诱拐的少孩全彩啪啪漫画

java代碼自動關閉窗體,java按鈕關閉當前窗口

JAVA如何用按鈕關閉窗體

很久沒有用過界面編程了,就當復習一下了,哈哈

成都創新互聯公司專注于松桃企業網站建設,響應式網站建設,商城網站開發。松桃網站建設公司,為松桃等地區提供建站服務。全流程按需網站設計,專業設計,全程項目跟蹤,成都創新互聯公司專業和態度為您提供的服務

如一樓所說的,給按鈕加一個監聽器ActionListener,寫一個實現方法

actionPerformed.此時當按鈕點擊時會調用actionPerformed方法,代碼如下:

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());

setSize(200,100);

setVisible(true);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

//捕捉到按鈕點擊時的事件處理方法

//按鈕點擊時一定會自動執行actionPerformed(ActionEvent e)方法

public void actionPerformed(ActionEvent e){

//關閉整個應用程序.如果只是是想關閉當前窗口,可以用

//dispose();

System.exit(0);

}

public static void main(String[] args){

new Close();

}

}

Java怎么實現一個窗口在用戶3秒后不進行任何操作的情況下自動關閉啊。最好有例子代碼啊,求教了啊!!

單獨顯示Dialog略奇怪,所以我用JFrame做例子,原理是一樣的

建立一個線程,睡3秒,醒來后就把JFrame窗體關閉。

給JFrame加事件監聽,包括所有你想監聽的事件,我這里為了簡便,只監聽了鼠標單擊。一旦事件發生,則吵醒那個線程,這樣它就睡不足3秒,并且直接進入下一個迭代,繼續睡3秒。

直到有一次單擊后3秒內沒有操作,這時候線程不會觸發InterruptedException 異常,就會執行關閉窗體的操作

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 {

Thread.sleep(3000);

frame.dispose();

return;

} catch (InterruptedException e) {}

}

}

});

frame.setSize(400, 400);

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.setSize(300,?300);

f.setLocation(300,?200);

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

f.addWindowListener(new?WindowListener()?{

@Override

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

System.out.println("windowOpened--窗體打開事件");

}

@Override

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

System.out.println("windowIconified--窗體圖標化事件");

}

@Override

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

System.out.println("windowDeiconifie--窗體取消圖標化事件");

}

@Override

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

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

}

@Override

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

System.out.println("windowClosing--窗體正在關閉事件");

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

f.dispose();//銷毀窗口

}

@Override

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

System.out.println("windowClosed--窗體關閉事件");

System.exit(0);

}

@Override

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

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

}

});

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

}

}

java中關閉窗口的方法

1 package applicationGraphicsInOut;

2 import java.awt.*;

3 import java.awt.event.*;

4 public class ApplicationGraphicsInOut {

5 public static void main(String args[])

6 {

7 new FrameInOut();

8 }

9

10 }

11 class FrameInOut extends Frame implements ActionListener

12 {

13 Label prompt;

14 TextField input,output;

15 FrameInOut()

16 {

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

18 prompt=new Label("請輸入您的名字");

19 input=new TextField(6);

20 output=new TextField(20);

21 setLayout(new FlowLayout());

22 add(prompt);

23 add(input);

24 add(output);

25 input.addActionListener(this);

26 setSize(300,200);

27 setVisible(true);

28 }

29 public void actionPerformed(ActionEvent e)

30 {

31 output.setText(input.getText()+",歡迎你");

32 }

33 }

該程序在Eclipse下運行通過,但是就是不能關不掉!

什么原因呢?

其中有以下幾種解決方法:

1:

把main函數改為如下

1 public static void main(String args[])

2 {

3 Frame fr=new FrameInOut();

4 fr.addWindowListener(new java.awt.event.WindowAdapter()

5 {

6 public void windowClosing(java.awt.event.WindowEvent e)

7 {

8 System.exit(0);

9 }

10 });

11

12 }

這種方法我有點不解,addWindowListener()括號里是怎么回事,我有點納悶,我還沒見過這樣的形式,不過我猜可能是實現了java.awt.event.WindowAdapter()類里面的一個抽象方法windowClosing(),但是我真沒有見過這種格式,求解釋。

2:

對WINDOWS_CLOSING事件做出響應,每個窗口都有3個控制圖標,其中最小化和最大化操作Frame可自動完成,而關閉窗口的操作不能通過單擊關閉圖標實現,需要程序專門書寫有關的代碼,其實這種方法與上一種一樣,則不過換了一種格式,一種初學者更明白易懂的格式。

在FrameInOut()構造函數里面添加監聽函數,添加監聽函數之后構造函數如下:

FrameInOut()

{

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

prompt=new Label("請輸入您的名字");

input=new TextField(6);

output=new TextField(20);

setLayout(new FlowLayout());

addWindowListener(new HandleWin()); //添加監聽函數,引發WindowEvent事件

add(prompt);

add(input);

add(output);

input.addActionListener(this);

setSize(300,200);

setVisible(true);

}

其中HandleWin()為內部類,主要實現WindowListener借口,添加監聽之后會引發WindowEvent類代表的所以七中事件,具體情況如下:

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

(2)WINDOW_DEACTIVATED:代表窗口失活(其他窗口被激活后原活動窗口失活)。

(3)WINDOW_OPENED:代表窗口被打開。

(4)WINDOW_CLOSED:代表窗口被關閉(關閉窗口后發生)。

(5)WINDOW_CLOSING:代表窗口正在被關閉(指關閉前。如單擊窗口標題欄上的關閉按鈕時)。

(6)WINDOW_ICONIFIED:代表使窗口最小化成圖標。

(7)WINDOW_DEICONIFIED:代表使窗口從圖標恢復

在WindowEvent類的主要方法有:

public window getWindow();

此方法返回引發當前WindowEvent事件的具體窗口對象,與getSource()方法返回的是相同的事件引用。

HandleWin定義如下:

class HandleWin extends WindowAdapter

{

public void windowClosing(WindowEvent e)

{

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

System.exit(0);

}

}

HandleWin是窗口事件的裁剪類WindowAdapter的子類,重載了WindowClosing()方法。

當然也可以這樣寫HandleWin

1 class HandleWin implements WindowListener

2 {

3 public void windowClosing(WindowEvent e)

4 {

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

6 System.exit(0);

7 }

8

9 @Override

10 public void windowActivated(WindowEvent arg0) {

11 // TODO Auto-generated method stub

12

13 }

14

15 @Override

16 public void windowClosed(WindowEvent arg0) {

17 // TODO Auto-generated method stub

18

19 }

20

21 @Override

22 public void windowDeactivated(WindowEvent arg0) {

23 // TODO Auto-generated method stub

24

25 }

26

27 @Override

28 public void windowDeiconified(WindowEvent arg0) {

29 // TODO Auto-generated method stub

30

31 }

32

33 @Override

34 public void windowIconified(WindowEvent arg0) {

35 // TODO Auto-generated method stub

36

37 }

38

39 @Override

40 public void windowOpened(WindowEvent arg0) {

41 // TODO Auto-generated method stub

42

43 }

44 }

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代碼自動關閉窗體,java按鈕關閉當前窗口
標題網址:http://vcdvsql.cn/article4/hspiie.html

成都網站建設公司_創新互聯,為您提供云服務器做網站網站改版標簽優化自適應網站企業建站

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

外貿網站制作