導航:首頁 > 編程語言 > java關閉頁面

java關閉頁面

發布時間:2022-05-30 23:54:53

A. java中怎麼關閉一個窗口

如果是add(XXX)那不就是在這個窗體里嗎?
直接disopose()就好了.

要不就this.dispose();

=====================================

"誰告訴你add(XXX)和disopose()都要在reg類里.我就要是前者在,後者就不讓他在reg類里,而且還要關閉reg類對象窗口.根本沒理解我的意思.我說的夠清楚了,你一眼帶過看的明白嗎,你再去看看我的題干."
又看了一遍 發現這次根本看不明白了...
=====================================

====================================
"this.dispose()我當然知道.但這句話在另一個類中寫,試問this還表示reg的對象嗎,顯然不行的.我現在就要在另一個類中寫.第二個人也是亂說,只有第一個回答可能正確,你們兩個都在亂說."
如果是在另一個類中寫就需要當前窗體當作參數傳遞.
import javax.swing.JFrame;

public class Reg extends JFrame {
/**
* 創建一個新的窗體
* */
public void newWindows(){
new newReg(this);//將自己傳遞給newReg這個窗口
}
}

這是另外一個窗體.
public class newReg extends JFrame{
public newReg(JFrame father) {//接收父窗口
father.dispose();
}
}

====================================
那是你思維跟我不一樣.我已在reg類中用了好多句add(xxx);來添加組件.現在其對象窗口,包括裡面的組建都能正常顯示.

我現在想在另一個類中,比如mm類中用dispose()方法去關掉reg類窗口,我若是再用this.dispose()那this指的就是mm類的對象了.現在你懂了吧.你再回去看看我的題干對不對.再告訴我題乾的答案.

====================================

問問題的都是爺.
問問題的都是爺.
問問題的都是爺.
問問題的都是爺.
問問題的都是爺.
問問題的都是爺.

"那是你思維跟我不一樣."
你們全家思維都和別人不一樣.
.別給我發消息了。問題已經給你解決了。

B. 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){
//關閉整個應用程序.如果只是是想關閉當前窗口,可以用

C. java 如何實現點擊關閉後 關閉窗口 求詳細代碼

方法一:
類 JFrame
javax.swing.JFrame

JFrame中的方法void setDefaultCloseOperation(int)可以設置
以下為改方法的用法:

setDefaultCloseOperation
public void setDefaultCloseOperation(int operation)設置用戶在此窗體上發起
"close" 時默認執行的操作。必須指定以下選項之一:

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 虛擬機 (VM) 中最後一個可顯示窗口被釋放後,虛擬機可能會終止

要實現你說的,應該採用
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

方法二:

import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

import javax.swing.JFrame;
import javax.swing.JOptionPane;

public class Test extends JFrame {

public Test(){
this.setTitle("title");
this.setSize(300,200);
this.setLocation(100,100);

//設置關閉時什麼也不做
this.setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);
//監聽關閉按鈕的點擊操作
this.addWindowListener(new WindowAdapter(){
//new 一個WindowAdapter 類 重寫windowClosing方法
//WindowAdapter是個適配器類 具體看jdk的幫助文檔
public void windowClosing(WindowEvent e) {
//這里寫對話框
if(JOptionPane.showConfirmDialog(null,
"退出","提
示",JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE)==JOptionPane.YES_OPTION){

System.exit(0);
}
}

});

this.setVisible(true);
}

public static void main(String[] args) {
new Test();
}

}
分享

D. 如何在java程序中,當點擊一個按鈕後,關閉當前窗口,開啟一個新的窗口

JButtonbtn=newJButton(newAbstractAction("關閉並打開"){@(ActionEvente){oldFrame.dispose();//關閉並銷毀,無需銷毀可採用oldFrame.setVisible(false);newFrame.setVisible(true);//打開新窗口}});

E. java中關閉當前窗口用什麼代碼

setDefaultCloseOperation(JFrame.EXIT_ON_CLOES)會讓整個程序都退出
JFrame.DISPOSE_ON_CLOSE只讓當前的窗口關閉而已

F. java在後台能關閉頁面嗎

當然可以啊,在Java中設置返回一個布爾值,然後在js中寫下:如果返回值是false就return,不返回任何值,否則執行彈出子畫面操作,望採納

G. JAVA怎麼實現點擊按鈕關閉窗口

你可以按鈕上添加事件把窗口2設置為隱藏。

jButton1.setText("ok");
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
jFrame1.setVisible(false);
}
});

另外 按鈕退出的命令是在按鈕的事件中寫
System.exit(0);

H. java中如何關閉當前窗口

窗口關閉應該設置成DISPOSE_ON_CLOSE(窗口關閉),而不是EXIT_ON_CLOSE(程序退出)

I. 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關閉頁面相關的資料

熱點內容
方舟如何刪除伺服器數據 瀏覽:600
用閱讀app怎麼看18 瀏覽:689
gn文件編譯 瀏覽:783
酷閃加密系統 瀏覽:820
區塊鏈數據加密 瀏覽:389
3d命令集 瀏覽:289
單片機的智能產品工廠里有 瀏覽:300
事業單位程序員有必要去嗎 瀏覽:583
人工智慧訓練小鳥python 瀏覽:132
怎樣把兩個pdf合並成一個 瀏覽:681
什麼app帶仿製圖章 瀏覽:420
單片機CJNE什麼意思 瀏覽:569
廊坊伺服器是什麼 瀏覽:763
客戶解壓要打欠條還是收據 瀏覽:774
通過app組件啟動有什麼壞處 瀏覽:775
不屬於國產密碼演算法 瀏覽:861
單片機LED顯示字型檔 瀏覽:353
日本文件夾品牌十大名牌 瀏覽:397
靜脈壓縮襪和打底褲的區別 瀏覽:345
勁舞伺服器中斷是什麼原因 瀏覽:630