zoukankan      html  css  js  c++  java
  • C#-WinForm-Timer控件

    比如在窗体中显示时间:

    错误思路一:我在窗体结构函数中写入一个死循环,每隔一秒显示一次当前时间

     public Form6()
            {
                InitializeComponent();
    
                while (true)
                {
                    label1.Text = DateTime.Now.ToString("yyyy年MM月dd日hh时mm分ss秒");
                    System.Threading.Thread.Sleep(1000);
                }
            }
    结构函数写循环显示时间

    错误原因:结构函数无限循环,结构函数读不完代码是无法打开窗体的(李献策lxc)

    错误思路二:放置一个按钮,窗体启动后点击按钮开始显示时间

     public Form6()
            {
                InitializeComponent();
    
                
            }
    
            private void button1_Click(object sender, EventArgs e)
            {
                while (true)
                {
                    label1.Text = DateTime.Now.ToString("yyyy年MM月dd日hh时mm分ss秒");
                    System.Threading.Thread.Sleep(1000);
                }
            }
    点击按钮显示时间

    错误原因:窗体系统在循环读取时间,无法对窗体进行其他操作

    =======================================================

    如何在窗体中显示当前时间?——Timer控件(李献策lxc)

    Timer控件 - 按用户定义的间隔引发事件的组件,独自占用一个线程,系统正常工作

    常用属性:

      Enabled - 控件是否启用

      Interval - 事件的频率,多长时间触发一次时间(李献策lxc)

    执行事件:每次要触发的事件

    在窗体中显示时间:

     //Timer控件 显示时间
            private void timer1_Tick(object sender, EventArgs e)
            {
                label1.Text = DateTime.Now.ToString("yyyy年MM月dd日hh时mm分ss秒");
            }
    Timer控件显示时间

    ===============================================================

    利用Timer控件制作一个随机抽奖系统

     public Form6()
            {
                InitializeComponent();            
            }
    
            bool start = false;
            //开始或结束抽奖
            private void button1_Click(object sender, EventArgs e)
            {
                if(start==false)
                {
                    timer1.Enabled = true;
                    start = true;
                    button1.Text = "停止";
                }
                else
                {
                    timer1.Enabled = false;
                    start = false;
                    button1.Text = "开始";
                }
            }
            //Timer控件事件
            private void timer1_Tick(object sender, EventArgs e)
            {
                Random r = new Random();
                label1.Text = r.Next(1, 200).ToString();
            }
    随机抽奖

  • 相关阅读:
    尝试消除switch
    JsUnit的测试套件
    GetCallbackEventReference对我来说太复杂了
    实现获取客户端的MAC地址(2)
    控件开发复习
    在VS2008的JScript编辑器中显示为命名空间
    函数参数修饰符out、ref及空白的区别
    检测代码位置的比较(C#代码VS存贮过程)
    发布时,正在使用的用户出错
    js特效,加速度,图标跳动
  • 原文地址:https://www.cnblogs.com/qq450867541/p/6174175.html
Copyright © 2011-2022 走看看