A. 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,不做任何事,點擊關閉無效。
B. java的Frame窗體如何設置滑鼠點擊關閉圖標時關閉窗體
每個AWT窗體的右上角都有三個圖標,分別控制窗體的最小化、最大化和關閉。最小化和最大化圖標的功能是內置的,無需編程實現。而當用戶單擊關閉圖標時,AWT窗體無響應。用戶如果要關閉AWT窗體,只能通過任務管理器結束java進程,這顯然太麻煩了。因此,必須編程實現關閉圖標的功能,而這需要通過捕獲窗體事件來實現。
窗體事件是指示窗體狀態改變的低級別事件。當打開、關閉、激活、停用、圖標化或取消圖標化窗體對象時,或者焦點轉移到窗體內或移出窗體時,由窗體對象生成此事件。該事件被傳遞給每一個使用窗體的 addWindowListener 方法注冊以接收窗體事件的 WindowListener對象。也就是說,當用戶單擊窗體的關閉圖標時,將產生窗體事件(WindowEvent)。該事件由窗體監聽器介面(WindowListener)負責捕獲。
捕獲窗體事件的步驟是:
(1) 讓類實現窗體監聽器介面,這將使得該類變成窗體事件監聽器;
(2) 向類注冊窗體事件監聽器;
(3) 實現窗體事件監聽器的所有方法。
源代碼Calc.java可修改如下:
package calc;
import java.awt.*;
import java.awt.event.*;
public class Calc extends Frame implements WindowListener{
public Calc(){
super(「計算器」);
setSize(200,200);
addWindowListener(this);
}
// 用戶單擊窗體的關閉圖標時調用本方法。
public void windowClosing(WindowEvent e) {
System.exit(0); //終止當前正在運行的 Java 虛擬機,退出系統。
}
public void windowClosed(WindowEvent e) {}
public void windowOpened(WindowEvent e) {}
public void windowIconified(WindowEvent e) {}
public void windowDeiconified(WindowEvent e) {}
public void windowActivated(WindowEvent e) {}
public void windowDeactivated(WindowEvent e) {}
public static void main(String args[]){
new Calc().setVisible(true);
}
}
運行結果:單擊窗體的關閉圖標,窗體關閉。這說明窗體已具備響應事件的能力。
C. 在java中怎樣通過按鈕將Frame關閉代碼
假設JFrame的對象是j再在按鈕控制代碼里寫
J.dispose();
D. java frame點擊右上方紅叉不能關閉,什麼原因
frame要添加關閉事件才能關閉窗口,代碼如下:
this.addWindowListener
(
newWindowAdapter(){
publicvoidwindowClosing(WindowEvente){
System.exit(0);
}
}
);
如果是 JFrame 可以添加以下代碼:
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
E. 如何在frame裡面的窗口裡面關掉整個窗口
importjava.awt.*;
{
publicDemoFrame(){
ButtonbtnClose=newButton("關閉窗口");
add(btnClose);
setLayout(newFlowLayout());
setTitle("Frame窗口");
setSize(230,120);
setLocationRelativeTo(null);
//點擊窗口的關閉按鈕時,關閉窗口.結束程序
btnClose.addActionListener(e->{
this.setVisible(false);//窗口不可見
this.dispose();//銷毀窗口
System.exit(0);//結束程序
});
}
publicstaticvoidmain(String[]args){
//創建窗口並設置可見
EventQueue.invokeLater(()->newDemoFrame().setVisible(true));
}
}
F. java如何關閉JFrame
1、你沒有為窗口添加窗口事件偵聽
2、這兩個變數要在你的main方法里調用,你的main方法是靜態的,靜態方法只能使用靜態變數,所以要將這兩個變數設置成靜態的
frm.addWindowListener(new WindowListener(){
@Override
public void windowActivated(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowClosed(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowClosing(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowDeactivated(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowDeiconified(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowIconified(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowOpened(WindowEvent e) {
// TODO Auto-generated method stub
}});
貌似低版本jdk需要手動添加窗口事件監聽
你在那個close事件里加上關閉程序的代碼就行了
G. java如何關閉某JFrame窗口,而不是退出整個程序!
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"。
H. java中怎樣關閉一個框架
框架沒有說關閉不關閉的問題,框架只是對你平時工作的一種封裝,用來簡化你的工作量的。一般的框架都是要在工程中引入一些jar包,然後配置一些文件,如web.xml和框架對應的XXX.xml,如果你不想使用這些框架,直接去掉web.xml中的相關配置即可。
目前常用的java web框架有 Spring,Hibernate,Struts1,Struts2等,有需要的可以去了解下。
I. java新建一個frame如何點擊關閉
不需要 addWindowListener。
只需要給 Frame 做以下設置即可:
setDefaultCloseOperation(DISPOSE_ON_CLOSE);