C# Timer 运行后窗体卡住不动,等很久代码运行完之后才恢复
各位大侠,有没有遇到这种问题啊,Timer里面运行代码,要等很久,而且窗体是卡住的,这个怎么解决啊,求帮忙。。...
各位大侠,有没有遇到这种问题啊,Timer里面运行代码,要等很久,而且窗体是卡住的,这个怎么解决啊,求帮忙。。
展开
5个回答
展开全部
C# Timer 运行后窗体卡住不动,等很久代码运行完之后才恢复是设置错误造成的,解决方法为:
1、打开"Microsoft Visual Studio 2008",如图所示。
2、找到"文件--新建--项目",鼠标单击打开创建项目的窗体。
3、因我们这个试验是WINFROM项目,所以打开创建项目的窗体后,需要项目类别中的"WINDOWS"下找到"Windows窗体应用程序",还有命名项目名称.选择完毕后,点击"确定"按钮,项目即创建成功。
4、项目创建成功后,默认自带一个FROM窗体,我们需要在窗体中添加控件:"groupBox"一个,"label"两个"textBox"两个"button"一个,并分别将FROM和所有控件的TEXT属性分别命名为"登陆窗体""登陆""用户名:""密码:""提交".并将"textBox2"的"PasswordChar"属性后输入"*"。
5、录入完成后,启动测试按钮。
展开全部
原因:你用的是System.Windows.Forms命名空间下的Timer,这个Timer执行的操作都是由UI主线程来执行的,所以会导致窗体卡住。
解决:你使用System.Threading命名空间下的Timer就可以了。这个TImer是由线程池里面的线程执行的。
解决:你使用System.Threading命名空间下的Timer就可以了。这个TImer是由线程池里面的线程执行的。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你可以在timer事件中加代码:
timer事件
{
timer1.enable=false;//一进事件将定时器停了,以防没执行完代码再次运行
application.doevents();// 在你比较耗资源的代码前面加这句话,将控制权交给系统,不用界面控制
timer1.enable=true;//执行完操作,再启动
}
timer事件
{
timer1.enable=false;//一进事件将定时器停了,以防没执行完代码再次运行
application.doevents();// 在你比较耗资源的代码前面加这句话,将控制权交给系统,不用界面控制
timer1.enable=true;//执行完操作,再启动
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
是不是timer设置的时间长啊!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询