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

自包含. jar时启动屏幕不起作用

傅博容
2023-03-14

我为javafx应用程序使用启动屏幕功能。我使用javafx ant任务按fx: jar、fx: signjar、fx:部署的顺序运行以生成jar文件、jnlp文件、html文件和包括“image”和“exe”在内的nativeBundle。双击打包在. jar文件中时,启动运行良好。但是,当我双击应用程序映像文件夹中的exe文件或通过运行. exe设置文件设置后的快捷方式时,没有启动屏幕。为什么?exe文件不会基于jar文件运行?谢谢帮助。

共有1个答案

龙晟睿
2023-03-14

我遇到了同样的问题,并在我的fx:部署中尝试了许多可能性(比如在fx: info下添加fx: jvmarg、fx: jvmuserarg和fx: splash),在我的INNO脚本中,我还尝试了通过javapackager生成exe,甚至将图像格式更改为png、jpg、bmp,但当SplashScreen从自包含的exe包运行时,没有任何东西会出现。所以我创建了自己的替代方案,可以帮助任何发现相同问题的人。

主要类别:

            SplashScr splash = new SplashScr ();
            splash.setVisible(true);
            MainFrame mainFrame = new MainFrame();

            SwingWorker<Void, Void> worker = new SwingWorker<Void, Void>() {
                @Override
                protected Void doInBackground() throws Exception {
                    Thread.sleep(2000);
                    return null;
                }

                protected void done() {
                    splash.setVisible(false);
                    mainFrame.setVisible(true);
                    splash.dispose();
                    mainFrame.startProcess(args);
                }
            };
            worker.execute();

根据加载MainFrame所需的时间,您可以在Thread.sleep(2000)中添加或多或少的时间,甚至删除它,但重要的是此睡眠在SwingWorker中运行,否则可能不会出现飞溅。

SplashScr等级:

public class SplashScr extends JWindow {

  public SplashScr () {

    ImageIcon image = new ImageIcon(getClass().getResource("SplashScreen.png"));
    int width = image.getIconWidth();
    int height = image.getIconHeight();
    getContentPane().add(new JLabel("", image, SwingConstants.CENTER));
    setSize(width, height);
    setLocationRelativeTo(null);
  }
}

我希望它对发现相同问题的人有用。

 类似资料:
  • 我使用一个空活动为我的应用程序创建了一个启动屏幕,该活动在背景图像中保持可见3秒钟。通常,应用程序在背景图像变为可见之前以白色屏幕启动,然而,有些应用程序已经以“真实”的初始屏幕图像启动。如何实现这一点?

  • 我是swift和Xcode新手,我想知道是否有人愿意向我解释,我应该如何让我的启动屏幕显示3秒钟,然后在这段时间内稍微淡出? 我想做一个我以前构建的网页的web视图,但希望它在启动屏幕之前淡出。 我已经阅读了所有其他与该主题相关的问题,但我不理解它们。我也一直在关注一些关于这个主题的教程,但什么都没有。 有人吗,拜托?

  • 启动屏幕是一个用户对你应用的第一体验。 启动页面类型 占位 UI 品牌启动页面 启动页面类型 启动页面是用户对你应用的第一体验。 启动应用时,如果显示一个空白面板,会增加用户观察到的加载时间,考虑使用占位符 UI 或者一个品牌加载页面。 占位 UI 是最无缝的加载转换——适用于应用加载和应用内活动切换两者。 品牌启动页面提供了短暂的品牌曝光,让 UI 聚焦于内容上面。 品牌启动页面 占位 UI 占

  • 我已经覆盖了和所以我不太确定出了什么问题。它们是使用 Eclipse 生成的(来源 -

  • 当我通过JWS调用一个。jar时,我试图让启动屏幕工作。下面是jnlp文件的详细信息。其他功能正在按预期工作。我已经将pic.gif文件放在Apache tomact的根文件夹中 JaNeLA报告-版本11.05.17 http://localhost:8080/WithoutManifest.jnlp的报表 1.XML编码未知,但声明为UTF-8 通过添加标志优化此应用程序以供脱机使用。 可以通

  • pm2-init.sh文件: 这不起作用,所以我尝试使用,如下所示:首先,创建一个脚本,并将其命名为 然后打开编辑器: