WinForm timer 控件

复制代码
timer 控件:按用户定义的时间间隔引发的事件

    属性: Enabled   是否启用;  Interval    事件发生的事件间隔,单位是毫秒

    事件只有一个:Tick    事件经过指定的时间间隔发生

打开一个窗口,获取同步时间(精确到秒)

 // 首先在构造函数中设置初始状态

public Form1()
        {
            InitializeComponent();
            label3.Text = DateTime.Now.ToString("yyyy年MM月dd日hh时mm分ss秒");
  //其次设置在Timer空间的Tick事件发生的时间间隔及要显示的内容

 private void timer1_Tick(object sender, EventArgs e)
        {
            timer1.Interval = 1000;//时间间隔1s
            label1.Text = DateTime.Now.ToString("yyyy年MM月dd日hh时mm分ss秒");
        }
复制代码

举例:抽奖

复制代码
public partial class Form1 : Form
    {
        List<long> number = new List<long>();
        public Form1()
        {
            InitializeComponent();
            number.Add(13864312345);
            number.Add(13864311111);
            number.Add(13864322222);
            number.Add(13864333333);
            number.Add(13864344444);
            number.Add(13864355555);
            number.Add(13864366666);
            number.Add(13864377777);
            number.Add(13864388888);
            number.Add(13999999999);

        }
        Random r = new Random();

        private void timer1_Tick(object sender, EventArgs e)
        {
            timer1.Interval = 100;//时间间隔0.1s
            label1.Text = number[r.Next(0, number.Count)].ToString();
        }
        //定义一个标记变量
        bool start = false;
        
        private void button1_Click(object sender, EventArgs e)
        {
            //判断当前是开始还是结束
            if (start)//结束抽奖
            {
                button1.Text = "开始";
                start = false;
                timer1.Enabled = false;//启用控件
                //label1.Text = "15689311089";//作弊,设置此号肯定中奖
            }
            else//开启抽奖
            {
                button1.Text = "停止";
                start = true;
                timer1.Enabled = true;//禁用控件
            }
        }
}
View Code
复制代码

 

posted @   IT苦行僧-QF  阅读(4107)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
点击右上角即可分享
微信分享提示