The JWindow Class
JWindow is an extension of java.awt.Window that uses a JRootPane as its single component. Other than this core distinction, JWindow does not change anything defined by the Window class.
import java.awt.*; import javax.swing.*; public class SplashScreen extends JWindow { private int duration; public SplashScreen(int d) { duration = d; } // A simple little method to show a title screen in the center of the screen // for // the amount of time given in the constructor public void showSplash() { JPanel content = (JPanel) getContentPane(); content.setBackground(Color.white); // Set the window's bounds, centering the window. int width = 450; int height = 115; Dimension screen = Toolkit.getDefaultToolkit().getScreenSize(); int x = (screen.width - width) / 2; int y = (screen.height - height) / 2; setBounds(x, y, width, height); // Build the splash screen. JLabel label = new JLabel(new ImageIcon("dummyImage.gif")); JLabel copyrt = new JLabel("www.ayunor.com", JLabel.CENTER); copyrt.setFont(new Font("Sans-Serif", Font.BOLD, 12)); content.add(label, BorderLayout.CENTER); content.add(copyrt, BorderLayout.SOUTH); Color oraRed = new Color(156, 20, 20, 255); content.setBorder(BorderFactory.createLineBorder(oraRed, 10)); // Display it. setVisible(true); // Wait a little while, maybe while loading resources. try { Thread.sleep(duration); } catch (Exception e) { } setVisible(false); } public void showSplashAndExit() { showSplash(); System.exit(0); } public static void main(String[] args) { // Throw a nice little title page up on the screen first. SplashScreen splash = new SplashScreen(10000); // Normally, we'd call splash.showSplash( ) and get on with the program. // But, since this is only a test... splash.showSplashAndExit(); } }