今天用C#做了一個漂亮的數字時鍾。界面如下。

實現技術:主要是通過Graphics類的DrawImage方法來繪制數字時鍾中所有的數字,這些數字是從網上找的一些圖片文件。時鍾使用DateTime中Now屬性來獲得不同的,時,分,秒,最后通過定時器來實現時鍾的運行狀態。
Main Code:
- //將0~9數字圖片保存在Image數組中
- private Image[] image = new Bitmap[10];
- public Form1()
- {
- InitializeComponent();
- for (int i = 0; i < 10;i++ )
- {
- image[i] = new Bitmap(@"D:/編程/C#/數字時鍾/數字時鍾/Resources/"+i.ToString()+".jpg");
- }
- }
- private void Form1_Paint(object sender, PaintEventArgs e)
- {
- Graphics g = e.Graphics;
- int hh = DateTime.Now.Hour; //取得小時數字
- int hh1 = hh / 10;
- int hh2 = hh % 10;
- g.DrawImage(image[hh1], 20, 20, 80, 180);
- g.DrawImage(image[hh2], 100, 20, 80, 180);
- int mm = DateTime.Now.Minute; //取得分鍾數字
- int mm1 = mm / 10;
- int mm2 = mm % 10;
- g.DrawImage(image[mm1], 260, 20, 80, 180);
- g.DrawImage(image[mm2], 340, 20, 80, 180);
- int ss = DateTime.Now.Second; //取得秒數字
- int ss1 = ss / 10;
- int ss2 = ss % 10;
- g.DrawImage(image[ss1], 500, 20, 80, 180);
- g.DrawImage(image[ss2], 580, 20, 80, 180);
- }
- private void timer1_Tick(object sender, EventArgs e) //對窗體進行重繪
- {
- this.Invalidate();
- }
另外,需要將Timer的Interval屬性設為1000mm,Enable設置為True!
