BackgroundWorker 后台进程控制窗体label、richt…
2018-06-17 19:48:26来源:未知 阅读 ()
昨天写了一个从文章中提取关键词的程序,写完处理的逻辑后又花了好几个小时在用户友好性上。加了几个progressBar,有显示总进度的、有显示分布进度的。。因为程序要跑好几个小时才能执行好,只加个总进度的话感觉不太明显。一个label,显示当先操作的具体内容,还有个richtextbox显示出所有操作哦。。
直接扔代码咯,接好:
1 this.Invoke(new MethodInvoker(delegate() { label1.Text = "正在处理... "; label1.Refresh(); }));
把它放在backgroundWorker1_DoWork()就能实现后台进程管理label内容。
在对richtextbox操作是,我起初使用的也是这个代码,但运行时才发现,richtextbox的光标不会自动下移。所以还要加点代码:
1 this.Invoke(new MethodInvoker(delegate() { 2 richTextBox1.AppendText(text); 3 richTextBox1.SelectionStart = richTextBox1.Text.Length; 4 richTextBox1.ScrollToCaret();}));
那个.Refresh()被我省略掉了,但运行效果没有变化耶~~
附上个效果图吧:
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- 关于laravel后台模板laravel-admin select框的使用详解 2019-10-08
- PHP后台实现用微信小程序登录,可学习下 2019-08-27
- PHP后台处理语音识别 2019-08-09
- php多进程模拟并发事务产生的问题,可学习参考 2019-08-09
- Swoole_process实现进程池的方法 2019-07-24
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash