c# - 有没有办法在表单上确定对象的优先级?
问题描述
我有一个表格,角落里有一个计时器,重复数到 10。下面的“下一步”按钮触发用户每隔几秒钟读取一次。当我点击“下一步”按钮时,UI 在获取数据时冻结,其中包括计时器正在写入的文本框。因此,用户每次按下按钮时看到的可见数字都会冻结 2 秒。有没有办法让文本框每秒更新一次?
这是滴答事件:
private void timer_Counter_Tick(object sender, EventArgs e)
{
if (Ticker == 9)
{
Ticker = 0;
}
else { Ticker++; }
txtbx_Timer.Text = Ticker.ToString();
}
这是计时器启动:
timer_Counter = new System.Windows.Forms.Timer();
timer_Counter.Tick += new EventHandler(timer_Counter_Tick);
timer_Counter.Interval = 1000;
timer_Counter.Start();
解决方案
@ahmed 和@Franck,根据您的评论,我发现了 backgroundworker,并将繁重的处理放在另一个似乎解决了问题的线程上。谢谢!
推荐阅读
- grails - 如何在 Grails / Spock 测试中打印响应而不是:org.grails.plugins.testing.GrailsMockHttpServletResponse@62c0fcae
- apache-kafka - kafka流如何计算水印?
- bash - Swizzle Shell 命令
- c# - 选择打印机名称而不显示 PrintDialog
- python - 与循环重新匹配的通配符
- r - 使用R的指数加权移动标准差的矢量化实现?
- mysql - 从多个数据库引擎创建 SQL 服务器视图?
- sql - SQL计算3的倍数之间的所有行的标准偏差
- r - 随机分离数据帧但将相同的值保持在一起
- python - 如何让 Tkinter 程序实时扫描文本框以获取输入?