用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字
云代码 - java代码库

java 变色的Java电子时钟

2015-01-03 作者: java源代码大全举报

[java]代码库

import java.awt.Color;
import java.awt.EventQueue;
import java.awt.Font;
import java.util.Date;
import java.util.Random;

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.border.LineBorder;
import javax.swing.border.TitledBorder;

public class ColockDemo extends JFrame {

    /**
     * 
     */
    private static final long serialVersionUID = 1L;
    //候选颜色
    private final Color colors[] = { Color.BLACK, Color.BLUE, Color.CYAN,
            Color.DARK_GRAY, Color.GRAY, Color.YELLOW, Color.RED, Color.GREEN ,
            Color.MAGENTA, Color.PINK };

    public ColockDemo() {
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setResizable(false);
        this.setBounds(100, 100, 400, 130);
        this.setTitle("JAVA\\u8ff7\\u4f60\\u7535\\u5b50\\u8868");
        this.getContentPane().setLayout(null);

        JPanel panel = new JPanel();
        panel.setBounds(7, 10, 380, 73);
        panel.setBorder(new TitledBorder(new LineBorder(Color.BLACK), "\\u65f6\\u95f4(T)"));

        final TTimerLable clock = new TTimerLable();
//      clock.setForeground(Color.BLUE);
        Runnable color = new Runnable(){
            private boolean flag = true;
            private Random r = new Random();
            @Override
            public void run() {
                // TODO Auto-generated method stub
                while(flag){
                    try {
                        int index = r.nextInt(10);
                        Thread.sleep(1000);
//                      System.out.print(index + " ");
                        clock.setForeground(colors[index]);
                    } catch (InterruptedException e) {}
                }
            }

        };
        Thread colorTh = new Thread(color);
        colorTh.start();

        clock.setFont(new Font("隶书", Font.BOLD, 24));
        panel.setLayout(null);
        clock.setBounds(80, 10, 380, 60);
        panel.add(clock);
        getContentPane().add(panel);

        JLabel lblCkiller = new JLabel("C2killer ---- UNemployment 130 Day");
        lblCkiller.setBounds(169, 90, 215, 15);
        getContentPane().add(lblCkiller);

        clock.start();

    }

    public static void main(String [] args){
        EventQueue.invokeLater(new Runnable(){

            @Override
            public void run() {
                // TODO Auto-generated method stub
                ColockDemo fd = new ColockDemo();
                fd.setVisible(true);
            }});
    }

    // 显示时间的 Lable
    class TTimerLable extends JLabel implements Runnable {
        /**
         * 
         */
        private static final long serialVersionUID = 1L;
        private Date date = null;
        private boolean flag = true;
        private Thread thread = new Thread(this);

        public TTimerLable() {
            super();
        }

        public void start(){
            thread.start();
        }

        @Override
        public void run() {
            // TODO Auto-generated method stub
            while(flag) {
                date = new Date();
                String now = date.getHours() + " \\u70b9 " + date.getMinutes() + " \\u5206 " + date.getSeconds() + "\\u79d2";
                this.setText(now);
                try {
                    Thread.sleep(1000);
                } catch (InterruptedException e) {
                }
            }
        }

    }
}

//源代码片段来自云代码http://yuncode.net
			


网友评论    (发表评论)


发表评论:

评论须知:

  • 1、评论每次加2分,每天上限为30;
  • 2、请文明用语,共同创建干净的技术交流环境;
  • 3、若被发现提交非法信息,评论将会被删除,并且给予扣分处理,严重者给予封号处理;
  • 4、请勿发布广告信息或其他无关评论,否则将会删除评论并扣分,严重者给予封号处理。


扫码下载

加载中,请稍后...

输入口令后可复制整站源码

加载中,请稍后...