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.效果

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

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

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


当前标题:JavaFX监听窗口关闭事件实例详解
转载来于:http://myzitong.com/article/gdsdio.html