swing做的程序启动界面

类似于eclipse的进度条加载代码,很不错的效果。如下图: swing做的程序启动界面


转载请务必注明出处:http://www.zuidaima.com/share/1550463409130496.htm

package com.zuidaima.swing;

import javax.swing.*;
import java.awt.*;
import java.net.*;

public class JWindowDemo extends JWindow implements Runnable {
	Thread splashThread; // 进度条更新线程
	JProgressBar progress; // 进度条

	public JWindowDemo() {
		Container container = getContentPane(); // 得到容器
		setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); // 设置光标
		URL url = getClass().getResource("login.jpg"); // 图片的位置
		if (url != null) {
			container.add(new JLabel(new ImageIcon(url)), BorderLayout.CENTER); // 增加图片
		}
		progress = new JProgressBar(1, 100); // 实例化进度条
		progress.setStringPainted(true); // 描绘文字
		progress.setString("加载程序中,请稍候......"); // 设置显示文字
		progress.setBackground(Color.white); // 设置背景色
		container.add(progress, BorderLayout.SOUTH); // 增加进度条到容器上

		Dimension screen = getToolkit().getScreenSize(); // 得到屏幕尺寸
		pack(); // 窗口适应组件尺寸
		setLocation((screen.width - getSize().width) / 2,
				(screen.height - getSize().height) / 2); // 设置窗口位置
	}

	public void start() {
		this.toFront(); // 窗口前端显示
		splashThread = new Thread(this); // 实例化线程
		splashThread.start(); // 开始运行线程
	}

	public void run() {
		setVisible(true); // 显示窗口
		try {
			for (int i = 0; i < 100; i++) {
				Thread.sleep(100); // 线程休眠
				progress.setValue(progress.getValue() + 1); // 设置进度条值
			}
		} catch (Exception ex) {
			ex.printStackTrace();
		}
		dispose(); // 释放窗口
		showFrame(); // 运行主程序
	}

	static void showFrame() {
		JFrame frame = new JFrame("程序启动界面演示"); // 实例化JFrame对象
		frame.setSize(300, 200); // 设置窗口尺寸
		frame.setVisible(true); // 窗口可视
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 关闭窗口时退出程序
	}

	public static void main(String[] args) {
		JWindowDemo splash = new JWindowDemo();
		splash.start(); // 运行启动界面
	}
}

	    			


swing做的程序启动界面

上一篇:Windows GDI绘图-入门篇


下一篇:AI结合PS打造漂亮的碎花效果立体字