当前位置: 首页 > 知识库问答 >
问题:

关闭后JavaFX应用程序仍在运行

湛联
2023-03-14

我有问题关闭我的javaFX应用程序,当我点击关闭按钮从我的阶段,我的应用程序消失,但如果我寻找它在我的任务管理器我的应用程序仍然没有关闭。我尝试使用下面的代码强制关闭主线程和所有子线程,但是问题仍然存在。

primaryStage.setOnCloseRequest(new EventHandler<WindowEvent>() {

            @Override
            public void handle(WindowEvent t) {
                Platform.exit();
            }

        });

共有3个答案

耿学义
2023-03-14

首先看这里

 public void start(Stage stage) {
        Platform.setImplicitExit(true);
        stage.setOnCloseRequest((ae) -> {
            Platform.exit();
            System.exit(0);
        });
}
濮阳默
2023-03-14

唯一的办法就是呼叫系统。出口(0);

primaryStage.setOnCloseRequest(new EventHandler<WindowEvent>() {
            @Override
            public void handle(WindowEvent t) {
                Platform.exit();
                System.exit(0);
            }
        });

[编辑]

系统退出只会隐藏你的应用程序,如果你打开SO的manager任务,你的应用程序就会出现在那里。正确的方法是逐个检查线程,并在关闭应用程序之前关闭所有线程。

龙晟睿
2023-03-14

您的应用程序是否产生任何子线程?如果是,您是否确保终止它们(假设它们不是守护线程)?

如果你的应用程序产生非守护线程,那么它们(以及你的应用程序)将继续存在,直到你杀死进程

 类似资料:
  • 问题内容: 在Swing中,您可以简单地用于在关闭窗口时关闭整个应用程序。 但是,在JavaFX中找不到等效项。我有多个打开的窗口,如果一个窗口关闭,我想关闭整个应用程序。用JavaFX做到这一点的方法是什么? 编辑: 我了解可以覆盖以在窗口关闭时执行一些操作。问题是应该执行什么操作才能终止整个应用程序? 类中定义的方法不执行任何操作。 问题答案: 当最后一个关闭时,应用程序自动停止。目前,您的类

  • 我正在用场景构建器创建一个JavaFX应用程序。我在开头加了一段视频。所以我想播放视频之前,我的应用程序启动在全屏模式。问题是当它停止时,我只看到黑色尖叫,什么也没发生,我想这是因为视频是全屏的,它没有自动关闭。 我也有一个bug,在视频开始之前,我的主窗口的一些闪烁。我想这是因为视频放在控制器中,在我的应用程序启动后开始。 公共类主扩展应用程序{ 控制器类:

  • 在Swing中,您可以简单地使用在窗口关闭时关闭整个应用程序。 然而,在JavaFX中,我找不到一个等价物。我有多个窗口打开,我想关闭整个应用程序,如果一个窗口关闭。在JavaFX中实现这一点的方法是什么?

  • 我试图重新创建Connect四,我成功了。但我想通过频繁地切换颜色,给玩家一个获胜的四张光盘在哪里的指示。我对线程和编程中的时间概念是新的。 我也成功地给了用户这个指示,但是在关闭应用程序之后,控制台仍然会给出输出,也是在使用SetonCloserEquest时。 代码如下:

  • 问题内容: 我正在尝试在后台运行服务。我的应用程序要做的是,当用户选中复选框,然后服务启动,而未选中时,服务停止。哪个工作正常。但是问题是,当我从任务管理器中关闭应用程序时,它也停止了服务。我想要的是即使从任务管理器关闭后也要保持服务运行。然后,停止该服务的唯一方法是由用户自己打开框。 我该如何实现? 这是我的代码 我的主要活动 我的服务等级 更新资料 我们如何使该服务像gtalk服务一样运行?

  • 我的应用程序的目的是通过一个自定义对话框从一个评级栏中检索一个值(5分),并将其显示在主activity的一个TextView中。当我点击我在下图中用红色勾勒出来的按钮时,应用程序崩溃并关闭。 该应用程序由2个类/活动组成。主activity和自定义对话框activity。 这两个文件的代码可以在下面找到: mainactivity.java: mealRaterDialog.java: 我是An