Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >C# Timer控件学习之使用Timer解决按钮幂等性问题案例分享

C# Timer控件学习之使用Timer解决按钮幂等性问题案例分享

原创
作者头像
用户7718188
发布于 2022-11-06 12:17:01
发布于 2022-11-06 12:17:01
8760
举报
文章被收录于专栏:高级工程司高级工程司

Timer控件的属性

属性 AutoReset 获取或设置一个布尔值,该值指示 Timer 是否应只引发一次 Elapsed 事件((false) 或重复 (true))。  CanRaiseEvents 获取一个指示组件是否可以引发事件的值。(继承自 Component)  Container 获取包含 IContainer 的 Component。(继承自 Component)  DesignMode 获取一个值,用以指示 Component 当前是否处于设计模式。(继承自 Component)  Enabled 获取或设置一个值,该值指示 Timer 是否应引发 Elapsed 事件。  Events 获取附加到此 Component 的事件处理程序的列表。(继承自 Component)  Interval 获取或设置引发 Elapsed 事件的间隔(以毫秒为单位)。  Site 获取或设置在设计模式中将 Timer 绑定到其容器的站点。  SynchronizingObject 获取或设置对象,该对象用于在间隔过后封送发出的事件处理程序调用。 

Timer控件的方法

方法 BeginInit() 开始用于窗体或由其他组件使用的 Timer 的运行时初始化。  Close() 释放由 Timer 占用的资源。  CreateObjRef(Type) 创建一个对象,该对象包含生成用于与远程对象进行通信的代理所需的全部相关信息。(继承自 MarshalByRefObject)  Dispose() 释放由 Component 使用的所有资源。(继承自 Component)  Dispose(Boolean) 释放由当前 Timer 使用的所有资源。  EndInit() 结束用于窗体或由其他组件使用的 Timer 的运行时初始化。  Equals(Object) 确定指定对象是否等于当前对象。(继承自 Object)  GetHashCode() 作为默认哈希函数。(继承自 Object)  GetLifetimeService() 检索控制此实例的生存期策略的当前生存期服务对象。(继承自 MarshalByRefObject)  GetService(Type) 返回一个对象,该对象表示由 Component 或它的 Container 提供的服务。(继承自 Component)  GetType() 获取类型

代码比较简单,我们重在学习,学一下这个控件证明用,知道逻辑就可以了,代码很简单,两个按钮两个定时器,将它们的触发函数看懂就可以实现了,按钮一的操作就是针对按钮重复提交而设计的。

using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.Forms;​namespace Test929{    public partial class Form1 : Form    {        public Form1()        {            InitializeComponent();        }​        private void timer1_Tick(object sender, EventArgs e)        {            button1.Enabled = true;//将按钮的用户交互打开        }​        private void button1_Click(object sender, EventArgs e)        {            timer1.Enabled = true;//打开Timer定时器按钮            button1.Enabled = false;//将按钮的用户交互关闭这样可以实现,按钮不可点击两秒                     }​        private void button2_Click(object sender, EventArgs e)        {            timer2.Enabled = !timer2.Enabled;//打开定时器二的函数        }​        private void timer2_Tick(object sender, EventArgs e)        {            Console.WriteLine("两秒执行一次这个函数");//打印这个话证明我们进入这个函数        }    } }

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
C# 实时折线图,波形图
此Demo是采用VS自带的Chart图表控件,制作实时动态显示的折线图,和波形图。本文仅供学习分享使用,如有不足之处,还请指正。
zls365
2020/08/19
4.4K1
C# 实时折线图,波形图
C# 三个Timer
Timer 计时器是在C#开发中经常用到的,但是有很多开发人员对他并不了解,今天这篇文将我们就具体讲解一下C#中的计时器。
喵叔
2020/09/08
1.8K0
C# 三个Timer
谈谈C#中各种线程的使用及注意项~
接下来我们就来学习一下 timer 吧,摇摇脑袋,清醒一下,接下来开始学习....
用户7053485
2020/06/19
2K0
串口助手(简洁版)上位机软件零基础教程( C# + visual studio2017 )(二)
在上篇博客中,我们完成了串口助手(简洁版)可视化窗体的设计,并且单击启动后可以运行。但是光有外壳,没有灵魂。所以接下来我们将继续一步一步来编写上位机软件的程序部分。
全栈程序员站长
2022/09/03
4K0
串口助手(简洁版)上位机软件零基础教程( C# + visual studio2017 )(二)
.NET中有多少种定时器
.NET中至少有6种定时器,每一种定时器都有它的用途和特点。根据定时器的应用场景,可以分为UI相关的定时器和UI无关的定时器。本文将简单介绍这6种定时器的基本用法和特点。
czwy
2023/11/29
2920
[C#]多线程定时器
System.Threading.Timer是最简单的多线程定时器:它只有一个构造器和两个方法(尤其适合于像作者这样的极简主义者!)。在接下来的例子中,定时器会在第一个五秒钟结束后调用Tick方法,并输出“tick…”。而后每一秒钟调用一次Tick方法,直至用户按下回车键:
科控物联
2022/03/29
1K0
[C#]多线程定时器
【愚公系列】2023年12月 Winform控件专题 BackgroundWorker控件详解
Winform控件是Windows Forms中的用户界面元素,它们可以用于创建Windows应用程序的各种视觉和交互组件,例如按钮、标签、文本框、下拉列表框、复选框、单选框、进度条等。开发人员可以使用Winform控件来构建用户界面并响应用户的操作行为,从而创建功能强大的桌面应用程序。
愚公搬代码
2023/12/21
7270
C# WinForm 界面控件
1.首先插入新的子窗体form1,并设置IsMdiContainer = True 属性。
王 瑞
2022/12/28
3.3K0
C# WinForm 界面控件
C# DateTimePicker:日期时间控件「建议收藏」
日期时间控件(DateTimePicker)在时间控件中的应用最多,主要用于在界面上显示当前的时间。
全栈程序员站长
2022/08/31
5.5K0
C# DateTimePicker:日期时间控件「建议收藏」
C#各种定时器Timer类的区别与使用介绍
本文介绍下,C#中的各种定时器Timer,介绍它们之间的区别,通过具体的例子学习其使用方法。有需要的朋友,可以参考下。
zls365
2020/08/19
3.7K0
【愚公系列】2023年11月 Winform控件专题 Timer控件详解
Winform控件是Windows Forms中的用户界面元素,它们可以用于创建Windows应用程序的各种视觉和交互组件,例如按钮、标签、文本框、下拉列表框、复选框、单选框、进度条等。开发人员可以使用Winform控件来构建用户界面并响应用户的操作行为,从而创建功能强大的桌面应用程序。
愚公搬代码
2023/11/30
9940
C#上位机开发(二)—— Hello,World
  上一篇大致了解了一下单片机实际项目开发中上位机开发部分的内容以及VS下载与安装,按照编程惯例,接下来就是“Hello,World!”
vv彭
2020/11/12
2.1K0
C#上位机开发(二)—— Hello,World
[C# 上位机开发记录] 解决UI卡顿问题
视频演示:http://mpvideo.qpic.cn/0b2e4yaaiaaaa4alewnoojqvbzwdattaabaa.f10002.mp4? 通讯写好之后,通过定时器刷新界面--定时把数据
科控物联
2022/03/29
3.7K2
[C# 上位机开发记录] 解决UI卡顿问题
ASP.NET AJAX(13)__利用Microsoft AJAX Library开发客户端组件Sys.Component成员Sys.IDisposable成员Sys.INotifyDisposin
Microsoft AJAX Library定义了一个客户端组件的模型,它的基类是Sys.Component,它实现了三个接口Sys.IDisposable,Sys.INotifyDisposing,Sys.INotifyPropertyChange Sys.Component成员 get_events() get_id(); set_id(); get_isInitialized(); initialize(); dispose(); raisePropertyChanged(); Sys.IDispos
小白哥哥
2018/03/07
3.1K0
ASP.NET AJAX(13)__利用Microsoft AJAX Library开发客户端组件Sys.Component成员Sys.IDisposable成员Sys.INotifyDisposin
TWINCAT PLC ADS通讯(c#)
3..打开Microsoft Visual C# 2008 Express Edition
科控物联
2024/06/28
5190
TWINCAT PLC ADS通讯(c#)
c#实时显示时间 C#-WinForm-Timer控件
=======================================================
vv彭
2020/10/27
3.7K0
c#实时显示时间
    


C#-WinForm-Timer控件
c# 动态生成控件
今天这个主题主要也是群里小伙伴提到的一个问题,就是如何动态的生成控件,他是想自动生成一级二级菜单这样,我这里主要是动态生成的picturebox,希望能给他起到借鉴的作用,然后举一反三完成自己的项目!
zls365
2020/08/19
1.5K0
c# 动态生成控件
C#-winform基础-事件弹窗
name:在后台要获得前台的控件对象,需要使用name属性 visible:指示一个控件是否可用。 Enabled:指示一个控件是否可用。
用户9857551
2022/06/28
2.1K0
C#-winform基础-事件弹窗
C#实现定时器的几种方案
前几天写了一篇java的定时器方案,应小伙伴的要求,今天这里一下c#实现定时器的方案。
用户4831957
2019/10/31
18.4K0
C#项目实战练习:做自己的QQ
  C#程序设计实战练习项目,做一个类似于QQ的软件,程序参考明日科技出版的《C#项目开发入门实战》第一章:Q友,做自己的QQ。
小孙同学
2022/01/17
7.7K0
C#项目实战练习:做自己的QQ
相关推荐
C# 实时折线图,波形图
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档