JavaFX 监听窗口关闭事件实例详解

这篇文章主要介绍了JavaFX 监听窗口关闭事件实例详解的相关资料,需要的朋友可以参考下

1.写在前面

在JavaFX的程序开发的时候,在使用多线程的时候,认情况下在程序退出的时候,新开的线程依然在后台运行。

在这种情况下,可以监听窗口关闭事件,在里面关闭子线程。

2.具体实现的样例

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() { @Override public void handle(WindowEvent event) { System.out.print("监听到窗口关闭"); } }); } public static void main(String[] args) { launch(args); } }

其中,这个就是具体监听窗口关闭的具体实现:

primaryStage.setonCloseRequest(new EventHandler() { @Override public void handle(WindowEvent event) { System.out.print("监听到窗口关闭"); } });

3.效果

在点击窗口关闭按钮的时候,控制台会输出

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持

相关文章

Java中的String是不可变对象 在面向对象及函数编程语言中,不...
String, StringBuffer 和 StringBuilder 可变性 String不可变...
序列化:把对象转换为字节序列的过程称为对象的序列化. 反序...
先说结论,是对象!可以继续往下看 数组是不是对象 什么是对...
为什么浮点数 float 或 double 运算的时候会有精度丢失的风险...
面试题引入 这里引申出一个经典问题,看下面代码 Integer a ...