你的意思是创建一个线程,这个线程里处理一些东西,然后随时把结果返回到主窗体中,对吗?
如果是这样一来,我建议一个线程处理一条数据,然后就返回了
for(int i = 0;i < 10;i++)
{
//创建线程
//掉用Function2刷新页面
}
你如果想在线程中控制主窗体,会比较困难,需要传递消息,我个人认为,没有这个必要,你可以线程中的循环放到主窗体中,就轻松实现了Good luck!
如果是这样一来,我建议一个线程处理一条数据,然后就返回了
for(int i = 0;i < 10;i++)
{
//创建线程
//掉用Function2刷新页面
}
你如果想在线程中控制主窗体,会比较困难,需要传递消息,我个人认为,没有这个必要,你可以线程中的循环放到主窗体中,就轻松实现了Good luck!
解决方案 »
- C# winform动态调用C++编写的DLL
- 我的小诗,大家可以在适当的位置补充喔
- 如何做出掷骰子的效果,就像QQ飞行棋里那种掷骰子的效果。(可以另外给分)
- 一个弱弱的问题
- MSCHART 复制到剪贴板后,用Clipboard.GetDataObject()出现致命错误??
- 写C#下的消息传递 需要USING什么
- 请问哪里有免费C#.net软件下载呢???
- ~~如何用Dropdownlist控件对DataGird进行数据筛选?也就是重新有条件加载DataGrid~~
- vs2012打包部署快疯了。。。求助。。。
- 请问ListBox怎么用呀,在线等待....................急
- dataset.merge()操作的相关数据集结构可不同吗?merge()是不是相当于集合的并操作呢?
- 关于dataset的问题?
http://www.yesky.com/SoftChannel/72342380468109312/20030225/1653758.shtmlhttp://www.yesky.com/SoftChannel/72342380468109312/20030516/1701196.shtml
我也这样,楼主可以试试
一般程序都应该这样设计吧
二种办法好象是使用Invoke吧,但是我也不会
把需要改变的窗口控件赋值给class subthread里面响应类型的成员(设成public)
你的class subthread应该是实例化了以后使用成员函数的吧。
实例化以后,调用ClientThreadFunction()函数之前把那些控件赋值就可以了。
我用过的。不用搞什么invoke那么麻烦。
我现在写东西也是用一个中间层来处理功能上的东西。都放在form里面太乱了。
但有些控件会不能操作的。