关于多线程的疑问,研究了一天,还是整不对!

yanele 2013-09-06 05:07:22
假设:界面上有一个button1,textBox1,progressBar1,checkBox1四个控件,如何达到下面要求:

点击button1按钮,执行一个数据库查询方法,执行时间大约5分钟以上。为了不让界面假死,需要界面同时刷新textBox1,progressBar1两个控件的值:

1、textBox1控件的Text值,每秒从1,2,3开始递增;
2、progressBar1控件,从1 —— 100反复循环,每500毫秒刷新一次,到100后又循环从1开始;

当数据库查询方法结束时(如果用到线程,保留下面显示效果并结束线程):
A、checkBox1控件设置为:this.checkBox1.Checked = false;
B、textBox1控件Text值停下来,不再递增;
C、progressBar1控件this.progressBar1.Maximum = 100;
D、最后提示:MessageBox.Show("数据执行完成!");

实在搞不定了,自己弄要么不能更新textBox1控件的Text值,要么不能同时刷新textBox1,progressBar1两个控件的值,请大家帮忙,最好能有代码!!!

不能用这个方法:Control.CheckForIllegalCrossThreadCalls = false;
...全文
456 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
asd100230520 2013-09-09
  • 打赏
  • 举报
回复
RunCommandAsynchronously
程序人生high 2013-09-06
  • 打赏
  • 举报
回复
http://hi.baidu.com/godghdai/item/48c516707b5f335e0c0a077b
程序人生high 2013-09-06
  • 打赏
  • 举报
回复
引用 12 楼 yanele 的回复:
上次的处理与这次有一些差异,我也套用过相应的方法,还是没有功能, 我是没有理解到其精髓,所以每次用起这个多线程总是不如意. 我写这个一方面是自学,一方面就是百度或在这里发贴求解决方法,谈不上有什么基础.
看.基础来了. http://www.java2s.com/Tutorial/CSharp/0470__Windows-Presentation-Foundation/2360__BackgroundWorker.htm
yanele 2013-09-06
  • 打赏
  • 举报
回复
上次的处理与这次有一些差异,我也套用过相应的方法,还是没有功能, 我是没有理解到其精髓,所以每次用起这个多线程总是不如意. 我写这个一方面是自学,一方面就是百度或在这里发贴求解决方法,谈不上有什么基础.
程序人生high 2013-09-06
  • 打赏
  • 举报
回复
引用 10 楼 yanele 的回复:
真不是懒得动手,研究了一天,http://www.cnblogs.com/hnfxs/p/3192009.html这里也写得很详细,但真正用到自己上面那个需求上时,总是不成功,才发贴求助于大家.
帮忙顶顶.顺便问下.lz8月7号就发帖问了..到现在还没解决呀?
yanele 2013-09-06
  • 打赏
  • 举报
回复
真不是懒得动手,研究了一天,http://www.cnblogs.com/hnfxs/p/3192009.html这里也写得很详细,但真正用到自己上面那个需求上时,总是不成功,才发贴求助于大家.
程序人生high 2013-09-06
  • 打赏
  • 举报
回复
一天都搞不定.说明基础没打好.不仅仅是多线程的问题了.
阿亮 2013-09-06
  • 打赏
  • 举报
回复
这个问题的最正规的解决方法就是多线程。其他方法要么解决不了问题,要么就是一个差劲的方法。
  • 打赏
  • 举报
回复
自己懒得动手,那么自己是一个初学者最大的敌人。
  • 打赏
  • 举报
回复
引用 5 楼 yanele 的回复:
网上有人对此评价褒贬不一.
你搬出这个“褒贬不一”是想说明什么呢?网上对“c#”其实更加地褒贬不一。
yanele 2013-09-06
  • 打赏
  • 举报
回复
我试过动画图片,在执行主方法时,也会卡着不动.至于BackGroundWorker组件,网上有人对此评价褒贬不一.
人生导师 2013-09-06
  • 打赏
  • 举报
回复
使用BackGroundWorker组件,参考:http://www.cnblogs.com/artech/archive/2008/07/30/1256144.html
灬浪子灬 2013-09-06
  • 打赏
  • 举报
回复
为什么不做个等待动画?
十八道胡同 2013-09-06
  • 打赏
  • 举报
回复
多线程 ~
threenewbee 2013-09-06
  • 打赏
  • 举报
回复
http://download.csdn.net/detail/caozhy/4832657

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧