C# WinForm-Timer控件的使用

比如在窗体中显示时间:

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

public Form6()
    {
      InitializeComponent();

      while (true)
      {
        label1.Text = DateTime.Now.ToString("yyyy年MM月dd日hh时mm分ss秒");
        System.Threading.Thread.Sleep(1000);
      }
    }

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

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

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控件

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

常用属性:

  Enabled - 控件是否启用

  Interval - 事件的频率,多长时间触发一次时间

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

在窗体中显示时间:

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

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

利用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();
    }

以上就是C# WinForm-Timer控件的使用的详细内容,更多关于c# winform time控件的资料请关注我们其它相关文章!

(0)

相关推荐

  • C# winform自定义翻页控件详解

    C#  winform中自定义的翻页控件,自己设计,供大家参考,具体内容如下 1.主要是使用控件绑定点击事件   用到的控件分别为picturebox   lable  上一页pbPage_Prev    下一页 pbPage_Next  首页 pbPage_Begin   尾页pbPage_End  是picturebox控件加背景图 "第  页/ 共  页" 是一个lable "labPageInfo"    在lable上面加了一个隐藏的textbox 控件

  • 使用重绘项美化WinForm的控件

    如果你觉得项目中的ComboBox.ListBox或其它的Winforms控件不能满足你的显示要求,包括窗体在内很多控件都支持重绘修改显示样式.下面的示例完成对ComBox数据项的重绘,希望能起到抛砖引玉的作用. 显示源代码 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq;

  • Winform控件Picture实现图片拖拽显示效果

    最近做了一个小工具,在Winform中对Picture控件有一个需求,可以通过鼠标从外部拖拽图片到控件的上,释放鼠标,显示图片! 首先你需要对你的整个Fom窗口的AllowDrop设置Ture //函数从动态链接库中倒入(模拟鼠标事件) [System.Runtime.InteropServices.DllImport("user32")] private static extern int mouse_event(int dwFlags, int dx, int dy, int cB

  • winform实现可拖动的自定义Label控件

    本文实例为大家分享了winform可拖动的自定义Label控件,供大家参考,具体内容如下 效果预览: 实现步骤如下: (1)首先在项目上右击选择:添加->新建项,添加自定义控件 (2)自定义的一个Label让它继承LabelControl控件,LabelControl控件是DevExpress控件库里面的一种,和Label控件差不多,想了解更多关于DevExpress控件,推荐到DevExpress控件论坛学习: public partial class LabelModule : LabelC

  • WinForm IP地址输入框控件实现

    本文实例为大家分享了WinForm IP地址输入框控件的具体实现代码,供大家参考,具体内容如下 IPInput.cs using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; using System.Data; using System.Text; using System.Windows.Forms; using System.Text.RegularE

  • C#日期控件datetimepicker保存空值的三种方法

    方法一(推荐): 设置datetimepicker的属性ShowCheckBox为true 在窗口初始化时候,添加代码this.datetimepicker1.Checked = false; 保存日期值入库的时候,就可以根据if(this.datetimepicker1.Checked ==false),保存空值. 方法二: 在窗口初始化函数中添加: 复制代码 代码如下: this.dateTimePicker1.Format=DateTimePickerFormat.Custom; this

  • C#中WinForm控件的拖动和缩放的实现代码

    C# WinForm控件的拖动和缩放是个很有用的功能.实现起来其实很简单的,主要是设计控件的MouseDown.MouseLeave.MouseMove事件,下面的几个步骤将逐步实现C# WinForm控件的拖动和缩放的功能. 1.定义一个枚举类型,描述光标状态 private enum EnumMousePointPosition { MouseSizeNone = 0, //'无 MouseSizeRight = 1, //'拉伸右边框 MouseSizeLeft = 2, //'拉伸左边框

  • Winform控件SaveFileDialog用于保存文件

    SaveFileDialog用于保存文件,供大家参考,具体内容如下 1.新建Winform窗体应用程序,命名为SaveFileDialogDemo. 2.在界面上添加一个按钮的控件(用于打开保存文件对话框),添加文本控件,用于输入要保存的内容. 3.后台代码实现: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing;

  • winform dateTime数据类型转换方法

    数据库中保存日期为NULL 程序中查出来判断的时候提示如下: 解决方案: if ( model.LZ007 != null && model.LZ007 > DateTime.MinValue && model.LZ007 < DateTime.MaxValue ) dateTimePicker1.Value = model.LZ007; 下面是其它网友的补充: C# winfrom中关於datetime数据类型转换问题,提示无法将字符型转换成datetime

  • WinForm实现鼠标拖动控件跟随效果

    本文实例为大家分享了WinForm实现鼠标拖动控件跟随效果的具体代码,供大家参考,具体内容如下 1. 运行初始窗口如下: 2. 拖动后效果如下: 3. 代码如下: public partial class Form1 : Form { /* * 理解了下面的几个概念,就能完全明白相对坐标的变化. * MouseEventArgs e 为事件鼠标参数,因此,e.Location 指示了位于事件源上的光标坐标 * Cursor.Position 获取的是相对于用户屏幕的光标坐标 * PointToC

  • c# Winform自定义控件-仪表盘功能

    前提 入行已经7,8年了,一直想做一套漂亮点的自定义控件,于是就有了本系列文章. GitHub:https://github.com/kwwwvagaa/NetWinformControl 码云:https://gitee.com/kwwwvagaa/net_winform_custom_control.git NuGet Install-Package HZH_Controls 目录 https://www.cnblogs.com/bfyx/p/11364884.html 用处及效果 准备工作

  • C# WinForm实现窗体上控件自由拖动功能示例

    本文实例讲述了C# WinForm实现窗体上控件自由拖动功能.分享给大家供大家参考,具体如下: 说明:首先在窗体上放一个PictrueBox控件,命名为pb1,拖动完整代码如下: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; usin

随机推荐