JWindowDemo.java
上传用户:hang318
上传日期:2021-05-07
资源大小:41k
文件大小:2k
源码类别:

状态条

开发平台:

Java

  1. package com.ata.wx;
  2. import javax.swing.*;
  3. import java.awt.*;
  4. import java.net.*;
  5. //程序启动界面
  6. public  class JWindowDemo extends JWindow implements Runnable {
  7.   Thread splashThread;  //进度条更新线程
  8.   JProgressBar progress; //进度条
  9.   
  10.   public JWindowDemo() {
  11.     Container container=getContentPane(); //得到容器
  12.     setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));  //设置光标
  13.     URL url = getClass().getResource("login.jpg"); //图片的位置
  14.     if(url != null){
  15.       container.add(new JLabel(new ImageIcon(url)),BorderLayout.CENTER);  //增加图片
  16.     }
  17.     progress = new JProgressBar(1,100); //实例化进度条
  18.     progress.setStringPainted(true); //描绘文字
  19.     progress.setString("加载程序中,请稍候......");  //设置显示文字
  20.     progress.setBackground(Color.white);  //设置背景色
  21.     container.add(progress,BorderLayout.SOUTH);  //增加进度条到容器上
  22.     Dimension screen = getToolkit().getScreenSize();  //得到屏幕尺寸
  23.     pack(); //窗口适应组件尺寸
  24.     setLocation((screen.width-getSize().width)/2,(screen.height-getSize().height)/2); //设置窗口位置
  25.   }
  26.   public void start(){
  27.     this.toFront();  //窗口前端显示
  28.     splashThread=new Thread(this);  //实例化线程
  29.     splashThread.start();  //开始运行线程
  30.   }
  31.   public void run(){
  32.     setVisible(true); //显示窗口
  33.     try {
  34.       for (int i=0;i<100;i++ ){
  35.         Thread.sleep(100); //线程休眠
  36.         progress.setValue(progress.getValue()); //设置进度条值
  37.       }
  38.     }
  39.     catch (Exception ex) {
  40.       ex.printStackTrace();
  41.     }
  42.     dispose(); //释放窗口
  43.     showFrame(); //运行主程序
  44.   }
  45.   static void showFrame(){
  46.     JFrame frame = new JFrame("程序启动界面演示"); //实例化JFrame对象
  47.     frame.setSize(300,200);  //设置窗口尺寸
  48.     frame.setVisible(true);  //窗口可视
  49.     frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  //关闭窗口时退出程序
  50.   }
  51.   public static void main(String[] args) {
  52.     JWindowDemo splash = new JWindowDemo();
  53.     splash.start();  //运行启动界面
  54.   }
  55. }