我想要做的是有一個JButton
,當您點擊它時,它將關閉JFrame
/應用程序。我有一個JButton
,但我想知道如何使它關閉當前打開的窗口。使用JButton關閉當前打開的應用程序
回答
只需使用JFrame的dispose()方法即可。見Javadoc。
附錄:另外,您可能希望將JFrame的默認關閉操作設置爲「退出」,而不是默認的「隱藏」。當你創建你的框架時做。
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
// Do whatever your application does.
frame.dispose(); // With this you close the frame.
*「..」退出「,而不是默認的」隱藏「。」*更好的是'DISPOSE_ON_CLOSE'。它將只在所有非守護線程完成運行後退出虛擬機。如果虛擬機在幀關閉後一直運行無限,這是程序員需要明確清理/關閉的線程的跡象。 –
在JButton
的actionPerformed()
,只需添加System.exit(0)
。你已準備好出發。
@AndrewThompson哦,是的。非零意味着異常終止。 –
@AndrewThompson有點難以擺脫MR。但是..我認爲你應該在那裏留下'噪音'。 –
呃(聳聳肩)如果這個人編輯的答案包括建議(這是我的偏好),評論就變成了噪音。 –
將一個監聽器註冊到您的按鈕,然後在單擊按鈕上調用System.exit(0)。
JButton button = new JButton("Close");
button.addActionLister(new ActionListener(){
public void actionPerformed(ActionEvent e){
System.exit(0);
}
});
*「可能會因爲我在沒有IDE的情況下編寫此代碼而發生語法更改」*不錯,給出您從..memory,experience ..類型輸入的內容。在使用我的編譯器檢查細節之後,我做了一些調整。 –
謝謝@AndrewThompson :) – dinukadev
見從Closing an Application的ExitAction
。
這種方法與其他建議有點不同,因爲它會將windowClosing()事件分派給Window。這將導致窗口基於窗口的關閉選項關閉,並將調用您可能已添加到窗口以處理windowClosing()事件的任何窗口偵聽器。
使從包含的JFrame應用程序中的類的對象,然後dispose
它在一個按鈕事件監聽器:
爲前。
public class Application extends JFrame {
private static final long serialVersionUID = 1L;
static Application app= new Application();
public Application{
setLayout(new FlowLayout());
Container pane =this.getContentPane();
JPanel right = new JPanel();
right.setLayout(new GridLayout(4,1));
ButtonEvent = new JButton("Button");
right.add(whiteList);
pane.add(right);
}
public class ButtonEvent implements ActionListener{
public void actionPerformed (ActionEvent event){
app.dispose();
dispose();
}
}
public static void main(String args[]){
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
app.setVisible(true);
app.setTitle("Application");
app.setSize(700,500);
app.setLocation(350, 100);
}
}
- 1. 關閉當前的應用程序,打開另一個
- 2. 打開外部應用程序並關閉當前應用程序
- 3. WPF關閉應用程序並重新打開當前窗口
- 4. 應用程序關閉前/應用程序打開前的Swift iOS 9+
- 5. 如何關閉當前打開的應用程序,當點擊推送通知
- 6. 關閉之前打開的應用程序
- 7. 當另一個應用程序關閉時打開應用程序
- 8. 使用cmd打開和關閉程序
- 9. 檢查當前應用程序打開或關閉時的Android alarmreceiver錯誤
- 10. WiX在卸載前關閉應用程序 - 關閉打開的應用程序消息
- 11. 使用VBS關閉打開的OneNote應用程序
- 12. 應用程序當前關閉關閉窗口提示
- 13. 如何在用戶關閉當前應用程序時打開另一個應用程序?
- 14. 在windows上使用C++打開和關閉應用程序
- 15. 使用藍牙和應用程序打開/關閉設備
- 16. 關閉當前打開的選項卡
- 17. 擴展程序獲取當前打開的應用程序
- 18. 當應用程序打開時調用哪個方法?當應用程序關閉?
- 19. 關閉通用應用程序中打開的文件
- 20. 如何關閉其他用戶打開的Outlook應用程序
- 21. 關閉delphi應用程序以及它打開的另一個應用程序
- 22. 使用ui開關關閉應用程序中的聲音xcode
- 23. 當我的應用程序開啓和關閉時,如何打開和關閉WP7中的gps?
- 24. 用地圖放大當前位置打開的應用程序
- 25. 如何獲取用戶當前打開的應用程序?
- 26. 使文件在當前WPF應用程序中打開
- 27. 應用程序是否允許用戶打開或關閉iCloud?
- 28. 當應用程序B關閉時關閉應用程序A:Mac OS X 10.7.3
- 29. 在Python中按順序打開和關閉應用程序
- 30. 使用bash打開和關閉進程
1)使用['setDefaultCloseOperation(DISPOSE_ON_CLOSE)'](http://docs.oracle.com/javase/7/docs/api/javax/swing/JFrame.html#setDefaultCloseOperation%28int%29 )。 「按鈕」(框架右上方)內置。 2)*「謝謝,諾亞」*噪音,不要說了。 –