JavaFX 監(jiān)聽(tīng)窗口關(guān)閉事件實(shí)例詳解
1.寫在前面
在JavaFX的程序開(kāi)發(fā)的時(shí)候,在使用多線程的時(shí)候,默認(rèn)情況下在程序退出的時(shí)候,新開(kāi)的線程依然在后臺(tái)運(yùn)行。
在這種情況下,可以監(jiān)聽(tīng)窗口關(guān)閉事件,在里面關(guān)閉子線程。
2.具體實(shí)現(xiàn)的樣例
package sample; import javafx.application.Application; import javafx.beans.value.ChangeListener; import javafx.beans.value.ObservableValue; import javafx.event.EventHandler; import javafx.fxml.FXMLLoader; import javafx.scene.Parent; import javafx.scene.Scene; import javafx.stage.Stage; import javafx.stage.WindowEvent; public class Main extends Application { @Override public void start(Stage primaryStage) throws Exception{ Parent root = FXMLLoader.load(getClass().getResource("sample.fxml")); primaryStage.setTitle("Hello World"); primaryStage.setScene(new Scene(root, 300, 275)); primaryStage.show(); primaryStage.setOnCloseRequest(new EventHandler<WindowEvent>() { @Override public void handle(WindowEvent event) { System.out.print("監(jiān)聽(tīng)到窗口關(guān)閉"); } }); } public static void main(String[] args) { launch(args); } }
其中,這個(gè)就是具體監(jiān)聽(tīng)窗口關(guān)閉的具體實(shí)現(xiàn):
primaryStage.setOnCloseRequest(new EventHandler<WindowEvent>() { @Override public void handle(WindowEvent event) { System.out.print("監(jiān)聽(tīng)到窗口關(guān)閉"); } });
3.效果
在點(diǎn)擊窗口關(guān)閉按鈕的時(shí)候,控制臺(tái)會(huì)輸出
感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
- java開(kāi)發(fā)gui教程之jframe監(jiān)聽(tīng)窗體大小變化事件和jframe創(chuàng)建窗體
- Java添加事件監(jiān)聽(tīng)的四種方法代碼實(shí)例
- JAVA用戶自定義事件監(jiān)聽(tīng)實(shí)例代碼
- Java Swing中JList選擇事件監(jiān)聽(tīng)器ListSelectionListener用法示例
- java實(shí)現(xiàn)table添加右鍵點(diǎn)擊事件監(jiān)聽(tīng)操作示例
- Java事件監(jiān)聽(tīng)機(jī)制講解
- java-RGB調(diào)色面板的實(shí)現(xiàn)(事件監(jiān)聽(tīng)器之匿名內(nèi)部類)
- java中接口和事件監(jiān)聽(tīng)器的深入理解
- Java基礎(chǔ)學(xué)習(xí)之Swing事件監(jiān)聽(tīng)
- Java?Spring?事件監(jiān)聽(tīng)詳情解析
相關(guān)文章
淺析Java設(shè)計(jì)模式編程中的單例模式和簡(jiǎn)單工廠模式
這篇文章主要介紹了淺析Java設(shè)計(jì)模式編程中的單例模式和簡(jiǎn)單工廠模式,使用設(shè)計(jì)模式編寫代碼有利于團(tuán)隊(duì)協(xié)作時(shí)程序的維護(hù),需要的朋友可以參考下2016-01-01如何為Spark Application指定不同的JDK版本詳解
這篇文章主要給大家介紹了關(guān)于如何為Spark Application指定不同的JDK版本的相關(guān)資料,文中通過(guò)示例代碼將解決的方法介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友下面來(lái)隨著小編一起學(xué)習(xí)學(xué)習(xí)吧。2017-11-11Java設(shè)計(jì)模式七大原則之單一職責(zé)原則詳解
單一職責(zé)原則(Single Responsibility Principle, SRP),有且僅有一個(gè)原因引起類的變更。簡(jiǎn)單來(lái)說(shuō),就是針對(duì)一個(gè)java類,它應(yīng)該只負(fù)責(zé)一項(xiàng)職責(zé)。本文將詳細(xì)介紹一下Java設(shè)計(jì)模式七大原則之一的單一職責(zé)原則,需要的可以參考一下2022-02-02Java concurrency線程池之線程池原理(三)_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
這篇文章主要為大家詳細(xì)介紹了Java concurrency線程池之線程池原理第三篇,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06java組裝樹(shù)形結(jié)構(gòu)List問(wèn)題
這篇文章主要介紹了java組裝樹(shù)形結(jié)構(gòu)List問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-08-08