導航:首頁 > 編程語言 > java如何只關閉一個窗口

java如何只關閉一個窗口

發布時間:2025-07-20 18:05:28

java怎麼使一個JFrame面板關掉,而不是隱藏

如果你不想用exit(0)的話dispose()就可以,dispose()不是隱藏,而是將那個資源釋放掉,又不會關閉整個程序

② java中如何關閉一個窗口就完全釋放它所佔的資源但不終止整個程序(程序由多個窗口)

根據Java的垃圾回收機制:垃圾回收回收的是無任何引用的對象占據的內存空間
所以內你只要採用匿名類創建打開容的窗口並調用System.gc() 或Runtime.getRuntime().gc() 就可以啦
在要創建窗口的地方這樣寫:
new frame().setVisible(true);
System.gc() ;
當你再次打開同樣的窗口時,又會執行new frame().setVisible();重新創建一個新的窗口,原來的自然就變成無任何引用的對象了,隨即就會被JVM垃圾回收機制回收掉了

注意:調用System.gc()用於顯式通知JVM可以進行一次垃圾回收,但真正垃圾回收機制具體在什麼時間點開始發生動作是不可預料的

③ 我的Eclipse不小心開了兩個代碼窗口,怎麼關掉一個呀

有兩個方法,第一:關掉其中一個,點那個叉的圖標或點-的圖標;第二個方法:左擊uploadAction.java那個位置不鬆手,往上移,移到*.jsp那個工具欄的位置旁邊,這樣就恢復了只有一個窗口。

④ 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如何實現關閉一個窗口彈出另外一個窗口

在Java中,對窗口任何操作都會對應的監聽事件,故要實現關閉一個窗口時彈出另版外一個權窗口,只需要在該關閉的窗口的監聽事件中添加彈窗事件即可。
具體實現如下:
this.addWindowListener(new WindowAdapter(){
@Override
public void windowClosing(WindowEvent e)
{
setVisible(false);
new JFrame("新窗口");
}});

在JavaGUI編程中,關閉窗口彈出新窗口是很常見的動作,比如一個窗口的業務操作完成了,需要跳轉到另一個窗口繼續執行,此時就需要關閉舊窗口並彈出新窗事件。值得注意的地方時,有時候的關閉往往只是暫時的將舊窗口暫時隱藏,而不是真的關閉,因為之後可能還會繼續用到,為了節省開銷,暫時的隱藏有利於提供效率。

⑥ java怎麼樣通過按鈕關閉一個JFrame

importjavax.swing.JFrame;

{

publicstaticvoidmain(String[]args){
newFrameTest("frame1");
newFrameTest("frame2");
newFrameTest("frame3");
}

publicFrameTest(Stringtitle){
this.setTitle(title);
this.setSize(800,600);
// this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
// this.setDefaultCloseOperation(HIDE_ON_CLOSE);
// this.setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);
this.setVisible(true);
}

}

只要在每個Frame里設定this.setDefaultCloseOperation(DISPOSE_ON_CLOSE);即可。

EXIT_ON_CLOSE,關閉程序。(所有窗口和進程都會關閉)

DISPOSE_ON_CLOSE,只關閉本窗口。

HIDE_ON_CLOSE,只隱藏本窗口,不關閉。

DO_NOTHING_ON_CLOSE,不做任何事,點擊關閉無效。

閱讀全文

與java如何只關閉一個窗口相關的資料

熱點內容
ubuntu文件夾解鎖 瀏覽:34
網站多少錢一單 瀏覽:382
系統鏡像恢復找不到文件 瀏覽:255
進什麼網站 瀏覽:588
修改了配置文件代碼沒有讀出來 瀏覽:749
vss資料庫是什麼 瀏覽:899
奇跡13單機系統找不到指定文件 瀏覽:719
flyme魅藍3以前的版本 瀏覽:318
安卓文件管理哪些文件夾可以刪除 瀏覽:290
安卓車載導航沒有聲音是怎麼回事 瀏覽:810
cjson數組格式 瀏覽:159
vb文件在哪裡 瀏覽:215
工廠里都招什麼編程人員 瀏覽:932
jspsql登錄 瀏覽:981
網路用語粉絲閱讀什麼意思 瀏覽:333
紅頭文件怎麼列印 瀏覽:94
熱血江湖130刺客升級 瀏覽:106
jsp頁面放大鏡技術介紹 瀏覽:101
網路編程udp 瀏覽:148
加密壓縮文件如何打開 瀏覽:56

友情鏈接