一、前期准备

1、创建一个WindowsApplication

2、放一个Timer控件

二、代码部分

[code:c#]

        //定义秒针,分针,时针的长度
        private const int s_pinlen = 150;
        private const int m_pinlen = 100;
        private const int h_pinlen = 50;

        private void MyDrawClock(int h, int m, int s)
        {
            Graphics g = this.CreateGraphics();
            //清除所有
            g.Clear(Color.White);
            //创建Pen
            Pen myPen = new Pen(Color.Black, 1);
            //绘制表盘
            g.DrawEllipse(myPen, this.ClientRectangle);
            //表中心点
            Point centerPoint = new Point(this.ClientRectangle.Width / 2, this.ClientRectangle.Height / 2);
            //计算出秒针,分针,时针的另外端点
            Point secPoint = new Point((int)(centerPoint.X + (Math.Sin(6 * s * Math.PI / 180)) * s_pinlen),
                    (int)(centerPoint.Y - (Math.Cos(6 * s * Math.PI / 180)) * s_pinlen));
            Point minPoint = new Point((int)(centerPoint.X + (Math.Sin(6 * m * Math.PI / 180)) * m_pinlen),
                       (int)(centerPoint.Y - (Math.Cos(6 * m * Math.PI / 180)) * m_pinlen));
            Point hourPoint = new Point((int)(centerPoint.X + (Math.Sin(((30 * h) + (m / 2)) * Math.PI / 180)) * h_pinlen),
                       (int)(centerPoint.Y - (Math.Cos(((30 * h) + (m / 2)) * Math.PI / 180)) * h_pinlen));
            //以不同的颜色绘制
            g.DrawLine(myPen, centerPoint, secPoint);
            myPen = new Pen(Color.Blue, 2);
            g.DrawLine(myPen, centerPoint, minPoint);
            myPen = new Pen(Color.Red, 4);
            g.DrawLine(myPen, centerPoint, hourPoint);
        }

        private void timer1_Tick(object sender, EventArgs e)
        {
            //得到当前的时、分、秒
            int h = DateTime.Now.Hour;
            int m = DateTime.Now.Minute;
            int s = DateTime.Now.Second;
            //调用MyDrawClock绘制图形表盘
            MyDrawClock(h, m, s);
            //在窗体标题上显示数字时钟
            this.Text = String.Format("{0}:{1}:{2}", h, m, s);
        }

[/code]

这样一个简易时钟窗体程序就完成了Cool