2

私は3つのクラス、main.class、login.class、そしてsplash-screen.classを持っています

私のスプラッシュスクリーンにはメインがなく、main.class が実行されているときにのみ実行されます。ログインするためのコントロールがあります)

それ、どうやったら出来るの?

メインを実行した瞬間に、splashscreen.class と login.class の両方が表示されます

4

2 に答える 2

1

スイングタイマーを使う:

  • スプラッシュ フレームを表示する
  • 3 秒の遅延でタイマーを作成し、setRepeats(false)このタイマーを呼び出します。その ActionListener はスプラッシュ フレームを非表示にし、ログイン フレームを表示する必要があります。
  • タイマーを開始する
于 2012-11-04T13:15:51.273 に答える
-1

以下に示すコードは、あなたのために働くかもしれません:

 public static void showSplash(int duration) {
                SplashScreen splash1 = SplashScreen.getSplashScreen();
                if(splash1==null){
                File file1=new File("splash.jpg");
                String imgfile1=file1.getAbsolutePath();

                JWindow splash = new JWindow();
                JPanel content = (JPanel)splash.getContentPane();

                int width = 655;
                int height = 442;
                Dimension screen = Toolkit.getDefaultToolkit().getScreenSize();
                int x = (screen.width-width)/2;
                int y = (screen.height-height)/2;
                splash.setBounds(x,y,width,height);

                JLabel label = new JLabel(new ImageIcon(imgfile1));
                content.add(label, BorderLayout.CENTER);
                splash.setVisible(true);
            // Wait a little while, maybe while loading resources
                try
                {
                    Thread.sleep(duration);
                } catch (Exception e) {}
                splash.setVisible(false);
                }
            }

このメソッドは、メソッドの最初の行で呼び出すことができますmain()

于 2012-11-04T13:21:50.460 に答える