遇到了这样的编程:
有个计算函数要等待较长时间,以前没有开辟新线程的时候,一运行,这下好了,等着吧,中间还不能停止,所以我想开个新线程来计算,这样主线程就比较空闲了,也可以随时停止新线程。
我找个例子来,就是为线程处理函数写了个全局UINT TreadProc(LPVOID param)
在这里面,我想完成计算并让当前窗体的m_progress(进度控件)显示计算进度,显示进度这块我能弄,关键是如何或者这个进度条。
我的思路是:获取当前应用程序句柄,然后获得当前对话框句柄,然后获得里面的m_progress,并且给他设个进度,这个思路如何实现那,或者各位有什么好的相法啊,着急中啊。
有个计算函数要等待较长时间,以前没有开辟新线程的时候,一运行,这下好了,等着吧,中间还不能停止,所以我想开个新线程来计算,这样主线程就比较空闲了,也可以随时停止新线程。
我找个例子来,就是为线程处理函数写了个全局UINT TreadProc(LPVOID param)
在这里面,我想完成计算并让当前窗体的m_progress(进度控件)显示计算进度,显示进度这块我能弄,关键是如何或者这个进度条。
我的思路是:获取当前应用程序句柄,然后获得当前对话框句柄,然后获得里面的m_progress,并且给他设个进度,这个思路如何实现那,或者各位有什么好的相法啊,着急中啊。
CThreadsDlg* pDlg = (CThreadsDlg*)param;//将接受到的LPVOID类型的指针强制类型转换
for(int i=1;i<=100;i++){
Sleep(1000);
pDlg->m_progress.SetPos(i);
}
return 0;