C#事件中处理另一个事件

2024-11-22 02:58:41
推荐回答(3个)
回答1:

C#我并不是很懂,不过对于通常的可视化编程软件来说,你只要不创建新线程,所有程序都是在主线程下运行,所以你说的情况是不可能发生,因为timer控件的执行是因为线程的空闲时会看机器然后决定是否响应,如果你写的程序不退出,这些控件以及窗口程序就不运行,那就不存在事件响应,如果你线程不空闲(正在执行用户写的程序),线程不会去处理各种事件,所以你这个button响应不退出就不会去执行其他任何事件,想解决这个问题其中一种做法就是把timer安排在另一个线程中相应,这样他就有运行时间,互不影响,C#可能会有其他更好的方法。。。
通常情况下,费时程序不要在事件响应中运行,而是安排到其他线程运行,事件响应只进行通知其他线程运行,这样事件响应处理就非常快,不会干扰到其他事件的响应。。。。

回答2:

先写好timer的时间 在timer1_tick事件写好 开始在form_load事件里面timer1.enable = false停用计时器
如果需要你点击button开始运行 就在button1_click事件第一行写 timer1.enable = true;
在timer1_tick事件里面写的代码包含检测你需要检测的事件或者变量 达到要求后就可以在timer1_tick里面写 timer1_enable = false; 就停止计时器了
你的意思我没明白 我说的也只是猜测你的想法

回答3:

没看懂你说的什么意思,能不能具体点,你要实现啥功能?“button的单击事件程序中要用到timer的定时事件”是什么意思