我想用多线程的方式来实现这个实时显示,可是显示error C2673: 'Fun1Proc' : global functions do not have 'this' pointers error C2660: 'GetClientRect' : function does not take 1 parameters等等。附上部分程序,谢谢大神指教
DWORD WINAPI Fun1Proc(
LPVOID lpParameter // thread data
);DWORD WINAPI Fun2Proc(
LPVOID lpParameter // thread data
);DWORD WINAPI Fun3Proc(
LPVOID lpParameter // thread data
);void CXxView::OnTimer(UINT nIDEvent)
{
int k=0;
CView::OnTimer(nIDEvent);
}DWORD WINAPI Fun1Proc(
LPVOID lpParameter // thread data
)
{ int k=0;
CRect rc;
CClientDC dc(this);
GetClientRect(&rc); x1[0]=410;y1[0]=594;
dc.MoveTo(x[j],y[j]);
x1[j+1]=410+15*(j+1);
y1[j+1]=594-(int)getad(i1)*13;
dc.LineTo(x1[j+1],y1[j+1]);
j++;
if(j%31==0)
{
RedrawWindow();
j=j%30;
}
return 0;
}
DWORD WINAPI Fun1Proc(
LPVOID lpParameter // thread data
);DWORD WINAPI Fun2Proc(
LPVOID lpParameter // thread data
);DWORD WINAPI Fun3Proc(
LPVOID lpParameter // thread data
);void CXxView::OnTimer(UINT nIDEvent)
{
int k=0;
CView::OnTimer(nIDEvent);
}DWORD WINAPI Fun1Proc(
LPVOID lpParameter // thread data
)
{ int k=0;
CRect rc;
CClientDC dc(this);
GetClientRect(&rc); x1[0]=410;y1[0]=594;
dc.MoveTo(x[j],y[j]);
x1[j+1]=410+15*(j+1);
y1[j+1]=594-(int)getad(i1)*13;
dc.LineTo(x1[j+1],y1[j+1]);
j++;
if(j%31==0)
{
RedrawWindow();
j=j%30;
}
return 0;
}
解决方案 »
- 关于directshow视频截图的问题
- 如何获取菜单项的名称 在线急等~~~~~~~~~~~~
- MFC对话框程序是如何依次执行的?
- 我是一个大三的学生 老师让我们写个简单聊天室程序 谁能给个思路啊
- 急求答案:VC中操作EXCEL表格(VBA代码转换成VC代码)
- 求OpenGL的屏幕射线选取Demo及源代码
- 访问数据库内存泄漏主要是(heap),代码如下,请给以帮助
- 调试版本与发布版本的区别?
- 十万火急:::::怎么样用最快的方法修复FAT表!!
- 如何把程序打包
- 新手提问:VC中的console程序可以转换为MFC程序吗
- error LNK2019: unresolved external symbol __imp___resetstkoflw
AfxBeginThread(Fun1Proc, this);然后在Fun1Proc中
CXxView* pView = (CXxView*) lpParameter;
这样你就能通过pView访问CXxView类中的对象啦
应该加在哪儿呢?谢谢
这句有问题。this是主线程才有的。你的工作线程不能直接使用。