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

java關閉jframe

發布時間:2022-09-06 20:21:07

1. JFrame怎樣關閉

JFrame的關閉不像Frame,點關閉按鈕自己會關閉,但是那樣做不好.可以用setDefaultCloseOperation(int operation);
其中operation有以下幾種
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSE

給你一個例子,看一下就明白了
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;

public class NewTaskFrame extends JFrame{
/**
*
*/
private static final long serialVersionUID = 1L;

public static void main(String[] args)
{
NewTaskFrame newframe = new NewTaskFrame("新建下載任務");
newframe.setSize(600,300);
newframe.setLayout(null);
newframe.setResizable(false);
newframe.setLocation(300, 300);

newframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
newframe.getContentPane().setBackground(Color.LIGHT_GRAY);
newframe.setVisible(true);
}

public NewTaskFrame (String str)
{
super(str);
}
}

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"。

2. JFrame關閉方法的問題

JFrame關閉像Frame點關閉按鈕自關閉做.用setDefaultCloseOperation(int operation);
其operation幾種
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSE

給例看明白
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;

public class NewTaskFrame extends JFrame{
/**
*
*/
private static final long serialVersionUID = 1L;

public static void main(String[] args)
{
NewTaskFrame newframe = new NewTaskFrame("新建載任務");
newframe.setSize(600,300);
newframe.setLayout(null);
newframe.setResizable(false);
newframe.setLocation(300, 300);

newframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
newframe.getContentPane().setBackground(Color.LIGHT_GRAY);
newframe.setVisible(true);
}

public NewTaskFrame (String str)
{
super(str);
}
}

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更改屬性值導致激發屬性更改事件其屬性名稱

3. Java如何關閉JFrame的其中一個子自定義窗口

1,XXX.dispose()方法吧!只關閉當前想要關閉的窗口,不影響其他窗口
2,JFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);方法。
設置右上角的[x]為注銷窗口。

4. java如何關閉某JFrame窗口,而不是退出整個程序!

  1. DO_NOTHING_ON_CLOSE(在 WindowConstants 中定義):不執行任何操作;要求程序在已注冊的 WindowListener 對象的 windowClosing 方法中處理該操作。

  2. HIDE_ON_CLOSE(在 WindowConstants 中定義):調用任意已注冊的 WindowListener 對象後自動隱藏該窗體。

  3. DISPOSE_ON_CLOSE(在 WindowConstants 中定義):調用任意已注冊 WindowListener 的對象後自動隱藏並釋放該窗體。

  4. EXIT_ON_CLOSE(在 JFrame 中定義):使用 System exit 方法退出應用程序。僅在應用程序中使用。

  5. 默認情況下,該值被設置為 HIDE_ON_CLOSE。更改此屬性的值將導致激發屬性更改事件,其屬性名稱為 "defaultCloseOperation"。

5. javaSwing點擊jMenuItem後彈出一個新的JFrame窗體,如何關閉新JFrame窗體時所有的JFrame窗體全部關閉

setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);

6. JAVA關於窗體JFrame的關閉事件

//設置關閉後直接退出
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);


packageLogin;
importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;
importjava.awt.event.MouseAdapter;
importjava.awt.event.MouseEvent;
importjava.net.URL;
importjavax.swing.ComboBoxModel;
importjavax.swing.DefaultComboBoxModel;

importjavax.swing.JLabel;
importjavax.swing.JPasswordField;
importjavax.swing.JRadioButton;
importjavax.swing.JTextField;

importjavax.swing.ImageIcon;
importjavax.swing.JButton;
importjavax.swing.JComboBox;
importjavax.swing.JOptionPane;
importjavax.swing.WindowConstants;
importjavax.swing.SwingUtilities;


/**
*'sJigloo
*SWT/SwingGUIBuilder,whichisfreefornon-commercial
*use.(ie,byacorporation,
*)thenyou
*.
*Pleasevisit

*.
*
*THISMACHINE,
*.
*/
.swing.JFrame{
privateJLabeljLabel_School_logo;
privateJLabeljLabel_user_name;
privateJLabeljLabel_passwd;
privateJButtonjButton_reg;
privateJButtonjButton_login;
;
privateJTextFieldjTextField_user_name;
privateJLabeljLabel_title;
privateintstudent_statue=0;
privateJComboBoxjComboBox1;
privateintmanager_statue=0;
/**
*
*/
/**
*
*/
/**
*Auto-
*/
publicstaticvoidmain(String[]args){
SwingUtilities.invokeLater(newRunnable(){
publicvoidrun(){
NewJFrameinst=newNewJFrame();
inst.setTitle("教室管理系統登錄");
inst.setLocationRelativeTo(null);
inst.setVisible(true);
}
});
}

publicNewJFrame(){
super();
initGUI();
}

privatevoidinitGUI(){
try{
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
getContentPane().setLayout(null);
{
jLabel_School_logo=newJLabel();
getContentPane().add(jLabel_School_logo);
jLabel_School_logo.setBounds(0,0,86,84);
ImageIconlogo=newImageIcon("img/log.jpg");
jLabel_School_logo.setIcon(logo);
}
{
jLabel_title=newJLabel();
getContentPane().add(jLabel_title);
jLabel_title.setBounds(86,0,447,84);
ImageIcontitle=newImageIcon("img/title.jpg");
jLabel_title.setIcon(title);
}
{
jLabel_user_name=newJLabel();
getContentPane().add(jLabel_user_name);
jLabel_user_name.setText("u5b66u53f7uff1a");
jLabel_user_name.setBounds(155,131,51,31);
jLabel_user_name.setFont(newjava.awt.Font("葉根友毛筆行書2.0版",0,12));
}
{
jTextField_user_name=newJTextField();
getContentPane().add(jTextField_user_name);
jTextField_user_name.setBounds(199,135,151,23);
}
{
jLabel_passwd=newJLabel();
getContentPane().add(jLabel_passwd);
jLabel_passwd.setText("u5bc6u7801uff1a");
jLabel_passwd.setBounds(152,185,51,31);
jLabel_passwd.setFont(newjava.awt.Font("葉根友毛筆行書2.0版",0,12));
}
{
jPasswordField=newJPasswordField();
getContentPane().add(jPasswordField);
jPasswordField.setBounds(199,189,151,23);
}
{
jButton_login=newJButton();
getContentPane().add(jButton_login);
jButton_login.setText("u767bu5f55");
jButton_login.setBounds(199,235,68,23);
jButton_login.setFont(newjava.awt.Font("葉根友毛筆行書2.0版",0,12));
}
{
jButton_reg=newJButton();
getContentPane().add(jButton_reg);
jButton_reg.setText("u6ce8u518c");
jButton_reg.setBounds(282,235,68,23);
jButton_reg.setFont(newjava.awt.Font("葉根友毛筆行書2.0版",0,12));
jButton_reg.addMouseListener(newMouseAdapter(){
publicvoidmouseClicked(MouseEventevt){
jButton_regMouseClicked(evt);
}
});
}
{
ComboBoxModeljComboBox1Model=
newDefaultComboBoxModel(
newString[]{"學生/老師登錄","管理員登錄"});
jComboBox1=newJComboBox();
getContentPane().add(jComboBox1);
jComboBox1.setModel(jComboBox1Model);
jComboBox1.setBounds(199,90,152,23);
jComboBox1.addActionListener(newActionListener(){
publicvoidactionPerformed(ActionEventevt){
jComboBox1ActionPerformed(evt);
}
});
}
pack();
this.setSize(549,334);
}catch(Exceptione){
//addyourerrorhandlingcodehere
e.printStackTrace();
}
}

(ActionEventevt){
if(jComboBox1.getSelectedIndex()==0)
{
jLabel_user_name.setText("學號:");
}
else
{
jLabel_user_name.setText("帳號:");
}
}

privatevoidjButton_regMouseClicked(MouseEventevt){
if(jComboBox1.getSelectedIndex()==1)
{
JOptionPane.showMessageDialog(NewJFrame.this,"管理員帳號不提供注冊!","",JOptionPane.DEFAULT_OPTION);
}
else
{
regregister=newreg();
register.setTitle("注冊");
register.setLocationRelativeTo(this);
register.setVisible(true);
}
}

}

//設置setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);在另一個方法,你怎麼用到你這個F呢?

7. Java jframe中如何實現窗口的關閉

效果圖

importjava.awt.event.*;
importjavax.swing.*;

{
JButtonjbExit;
publicDemoFrame(){
jbExit=newJButton("退出");
//當點擊退出按鈕時候的響應器
jbExit.addActionListener(newActionListener(){
@Override
publicvoidactionPerformed(ActionEvente){
doExit();//退出時候的方法
}
});
JPaneljp=newJPanel();
jp.add(jbExit);

add(jp);
setTitle("窗口");//窗口標題
setSize(380,185);//窗口大小
setLocationRelativeTo(null);//窗口居中
//setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//通常添加這行代碼,點擊窗口右下角的關閉時會結束程序
setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);//右下角的關閉,不主動採取任何行動

//當點擊窗口右上角的關閉按鈕時候的響應器
addWindowListener(newWindowAdapter(){
@Override
publicvoidwindowClosing(WindowEvente){
doExit();
}
});
}

//main方法
publicstaticvoidmain(String[]args){
newDemoFrame().setVisible(true);
}

//退出時候的選擇
privatevoiddoExit(){
intn=JOptionPane.showConfirmDialog(null,"你確定要退出嗎?","消息提示",JOptionPane.YES_NO_OPTION);
//取消選擇是-1,確定是0,取消是1
System.out.println(n);
if(n==0){//如果選擇了確定
System.exit(0);//那麼退出
}
}
}

8. 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關閉jframe相關的資料

熱點內容
c51單片機特殊寄存器的原理 瀏覽:576
閃耀永恆特利加密鑰 瀏覽:758
如何誇程序員 瀏覽:776
天津期貨python招聘 瀏覽:263
單片機機器語言寫的程序 瀏覽:548
韓國直播軟體app叫什麼名 瀏覽:916
軍營訓練不聽教官的命令 瀏覽:258
v開頭的音樂播放器是什麼APP 瀏覽:117
單片機是怎麼做出來的 瀏覽:315
博圖怎麼作為opc伺服器 瀏覽:100
編譯做題軟體 瀏覽:293
橋梁檢測pdf 瀏覽:685
化解壓力的一種方法 瀏覽:680
路由器和DSN伺服器有什麼區別 瀏覽:548
android伸縮控制項 瀏覽:851
androidm3u8緩存 瀏覽:236
imphp開源知乎 瀏覽:708
清除網路通配符dos命令 瀏覽:839
鴻蒙系統怎麼快速換回安卓 瀏覽:714
pdf綠色虛擬列印機 瀏覽:215