如何使我的Java桌面应用程序在它启动之前显示图像?

时间:2010-02-10 06:58:51

标签: java user-interface loading photo initializing

我正在使用NetBeans IDE 6.8(Mac版)。他们的GUI构建器的哪个工具可以帮助我做到这一点?

我想要的是在我向他展示应用程序之前,在我的应用程序加载几秒钟时向用户显示图像。我怎样才能做到这一点?初始化

4 个答案:

答案 0 :(得分:9)

如果安装了Java 6,请查看Splash-Screen tutorial

答案 1 :(得分:5)

实际上,你可以通过在java程序中使用-splash标志来做到这一点...... 例如,你想在运行main.class时显示图像splash.jpg,

所以你要做的是,

java -splash:pathoftheimage / splash.jpg main

答案 2 :(得分:3)

当您在MAC上运行时,您可能无法访问Java 6,因此必须自己构建启动画面。您应该在初始化周期中运行类似于以下早期的代码(即,以便在最长时间内显示启动画面对话框)。

JDialog dlg = new JDialog();
// Remove dialog decorations to make it look like a splashscreen.
dlg.setUndecorated(true);
dlg.setModal(true);
dlg.setLayout(new BorderLayout());
// Load image.
ImageIcon img = new ImageIcon(getClass().getResource("/foo/bar/splash.png");
// Add image to center of dialog.
dlg.add(img, BorderLayout.CENTER);
dlg.setLocationRelativeTo(null);
dlg.setVisible(true);

// ... Perform application initialisation here.

// Initialisation complete so hide dialog.
dlg.setVisible(false);
dlg = null;

答案 3 :(得分:-1)

如果您使用的是NetBeans ...那么请不要担心NetBeans已为您解决了这个问题。

  1. Right Click打开后Project
  2. 转到properties
  3. 点击Application
  4. 您想要展示的图片会有Splash ScreenBrowse
  5. 如下图所示

    enter image description here

    enter image description here

    当您执行此操作时,您的image会显示,但您将无法看到此信息。要查看它,您必须delay time appearence next window。为此,请执行以下步骤。

    1. 转到您要显示的JFrame code区域。
    2. Main Fun中,run有趣。
    3. run函数内部,只需编写以下代码。

      尝试{

      Thread.sleep(以毫秒为单位的时间,如4200);

      // Create Next Frame Object Here }

      catch(Exception ex) { }