using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace 倒計時
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
//定義全域變數分鐘和秒
int minute;
int second;
private void but_start_Click(object sender, EventArgs e)
{
//將值賦給分鐘和秒
minute = int.Parse(txt_show.Text.Substring(0, 2));
second = int.Parse(txt_show.Text.Substring(3, 2));
//開始計時
timer1.Enabled = true;
timer1.Interval = 1000;
timer1.Start();
}
private void but_stop_Click(object sender, EventArgs e)
{
//停止計時
timer1.Stop();
}
private void timer1_Tick(object sender, EventArgs e)
{
//秒為0時給秒從新賦值
if (second == 0)
{
second = 60;
}
//自減
--second;
if (second == 59)
{
minute--;
}
//改輸出格式
if (second < 10)
{
txt_show.Text = minute.ToString() + ":" + "0" + second.ToString();
}
else
{
if (minute < 10)
{
txt_show.Text = "0" + minute.ToString() + ":" + second.ToString();
}
else
{
txt_show.Text = minute.ToString() + ":" + second.ToString();
}
}
//要是倒計時完了,給0
if (minute == 0 && second == 0)
{
this.timer1.Stop();
minute = second = 0;
}
}
}
}
本人是一個大一學生,也是剛剛開始學,有哪些不對的地方請指教,QQ2524143038!

uj5u.com熱心網友回復:
后生可畏
uj5u.com熱心網友回復:
用DataTime.Now()獲取即時時間,計算與開始計時的時間的時間片斷,timer的時間不是很準確。非得用計數的話,可以使用TimeSpan這個結構,可以簡化你的程式陳述句和計算邏輯。uj5u.com熱心網友回復:
挺好的
uj5u.com熱心網友回復:
timer這個控制元件多用于 定時觸發 重點是觸發. 但是他的精度一般認為不高.建議看看 System.Diagnostics.Stopwatch 這個類uj5u.com熱心網友回復:
可以
uj5u.com熱心網友回復:
好的,感謝,這個就是特別簡單的一個計時器所以沒有想呼叫一些函式來做
uj5u.com熱心網友回復:
感謝各位大佬給的建議!!!轉載請註明出處,本文鏈接:https://www.uj5u.com/net/86378.html
標籤:C#
下一篇:C#的結構和陣列
