当我在afterselec事件中执行timer.enabled=true,不执行timer.enabled=false,那进度条可以显示,这是什么原因呢?
private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
{
timer1.Enabled = true;
//程序其他部分
。。。。
//
timer1.Enabled = false;
}
16 个解决方案
#1
你中间的执行太快了。。。没给timer显示的机会。
#2
timer启动,还没进入tick,就被disable了。。。
#3
我中间程序执行的事件要有一段时间,时间上应该是够的,有的要执行30秒以上的
#4
timer 设计间隔?
#5
设计间隔是100,刚才又改成10,都不行
#6
使用System.Threading.Timer看看
可能你的程序消息队列太长了,导致timer消息被延后
可能你的程序消息队列太长了,导致timer消息被延后
#7
或者手动触发下Tick事件看看
timer1_Tick(timer1, EventArgs.Empty);
timer1_Tick(timer1, EventArgs.Empty);
#8
貌似只看到你设置timer的enable,没设置启动啊。。。
timer1.Start();
启动timer
timer1.Start();
启动timer
#9
估计还是进度条显示的代码有问题。
另外 winform timer 的精度大概是55ms左右,再小也没用了。
另外 winform timer 的精度大概是55ms左右,再小也没用了。
#10
刚才设置了,还是没用
而且,只要我在事件中,不设置timer.enabled=false,进度条就能执行。
关键是,我在timer.enabled=true这里设置了断点后,发现改句能够显示进度条
#11
实际上就是:
timer1.Enabled = true;
//程序其他部分
。。。。
//
timer1.Enabled = false;
如果没有 timer1.Enabled = false;那timer的tick事件就能执行,如果两个都在的话,就不能进入到tick事件中。
我是一新手,盼指教!!
timer1.Enabled = true;
//程序其他部分
。。。。
//
timer1.Enabled = false;
如果没有 timer1.Enabled = false;那timer的tick事件就能执行,如果两个都在的话,就不能进入到tick事件中。
我是一新手,盼指教!!
#12
帮忙解决啊,郁闷中
#13
用委托试试吧。显示进图条的时候。
#14
timer设置了timer1.Enabled = true;
计时器就开始工作了,无需start的
计时器就开始工作了,无需start的
#15
开个线程做
#16
楼上正解。你的主线程都被timer开启和关闭之间的代码占用了,所以不会显示。只能新开线程用来显示。
#1
你中间的执行太快了。。。没给timer显示的机会。
#2
timer启动,还没进入tick,就被disable了。。。
#3
我中间程序执行的事件要有一段时间,时间上应该是够的,有的要执行30秒以上的
#4
timer 设计间隔?
#5
设计间隔是100,刚才又改成10,都不行
#6
使用System.Threading.Timer看看
可能你的程序消息队列太长了,导致timer消息被延后
可能你的程序消息队列太长了,导致timer消息被延后
#7
或者手动触发下Tick事件看看
timer1_Tick(timer1, EventArgs.Empty);
timer1_Tick(timer1, EventArgs.Empty);
#8
貌似只看到你设置timer的enable,没设置启动啊。。。
timer1.Start();
启动timer
timer1.Start();
启动timer
#9
估计还是进度条显示的代码有问题。
另外 winform timer 的精度大概是55ms左右,再小也没用了。
另外 winform timer 的精度大概是55ms左右,再小也没用了。
#10
刚才设置了,还是没用
而且,只要我在事件中,不设置timer.enabled=false,进度条就能执行。
关键是,我在timer.enabled=true这里设置了断点后,发现改句能够显示进度条
#11
实际上就是:
timer1.Enabled = true;
//程序其他部分
。。。。
//
timer1.Enabled = false;
如果没有 timer1.Enabled = false;那timer的tick事件就能执行,如果两个都在的话,就不能进入到tick事件中。
我是一新手,盼指教!!
timer1.Enabled = true;
//程序其他部分
。。。。
//
timer1.Enabled = false;
如果没有 timer1.Enabled = false;那timer的tick事件就能执行,如果两个都在的话,就不能进入到tick事件中。
我是一新手,盼指教!!
#12
帮忙解决啊,郁闷中
#13
用委托试试吧。显示进图条的时候。
#14
timer设置了timer1.Enabled = true;
计时器就开始工作了,无需start的
计时器就开始工作了,无需start的
#15
开个线程做
#16
楼上正解。你的主线程都被timer开启和关闭之间的代码占用了,所以不会显示。只能新开线程用来显示。