C#实现秒表程序

在部分效率测试的项目中,很多时候需要使用到秒表,虽然网上有可用的运行版本,但是加入不了自己的需求,于是就使用C#来写一个。

程序的逻辑很简单,就是使用一个时钟,把时间间隔设置为1。但是当时间间隔小于100毫秒时,再加上程序执行上的耗时,如果使用计数器来统计时间,哪时间就变得很不精确了,为了得到较为精确的计时,我们不使用计数器,而是时钟每次触发时,就使用当前的时间和最初的时间差,即刻度。可以使用Stopwatch类,本程序使用的是取系统的当前时间。

实现片断:

System.Windows.Forms.Timer m_Timer = new Timer();

m_Timer.Interval = 1;

在Timer的Tick事件里的实现,使用TimeSpan作为时间刻度:

             TimeSpan span = DateTime.Now - m_StartTime;

            DateTime n = new DateTime(span.Ticks);

            lblTime.Text = n.ToString("HH:mm:ss:fff");

这样就算Tick的触发不是很准确,但也不影响计算的时间间隔。

在程序实现屏幕截图:

            Image img = new Bitmap(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height);
            Graphics g = Graphics.FromImage(img);
            g.CopyFromScreen(new Point(0, 0), new Point(0, 0), img.Size);
            g.Dispose();
            Clipboard.SetDataObject(img, false);

其他的细节就不再细述了,使用都自己完成,所以也不上传原码了。

原文地址:https://www.cnblogs.com/Yjianyong/p/1776964.html