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.效果
在点击窗口关闭按钮的时候,控制台会输出
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
希望与广大网友互动??
点此进行留言吧!