我创建的是一个是对话窗口(用MFC),在程序执行过程中,创建一个子线程;这个线程用于画图(由于数据不断的更新,所以图形也要不断的更新),这个要怎么实现?我是想在子线程创建一个视图类窗口,然后再这个视图类窗口上画图,但是我不知道如何在子线程创建一个视图类窗口?最好能给出一个具体的程序参考一下,我是一个初学者,很多基础的都不懂,但是程序又急着要,没办法……网上有人说:非模式窗口!但是具体怎么操作,我还是不懂!
DWORD WINAPI ThreadProc(LPVOID lpParam)
{
return 0;
}
都说的太深奥了,我要求做的很简单,谁帮我添加一些程序到上面的子线程中:然后执行到这个子线程的时候,弹出一个窗口,然后画出一条直线就可以了。
MFC 对话窗口 视图类窗口 急!!!!
答案:4 悬赏:80 手机版
解决时间 2021-03-16 13:40
- 提问者网友:佞臣
- 2021-03-16 09:03
最佳答案
- 五星知识达人网友:一把行者刀
- 2021-03-16 10:41
呵,这个东西正式那 MFC 的 带界面线程嘛!
MFC提供两种线程,一种工作线程,不带界面的。另外一种就是可以带界面的线程了。如下代码:
CWinThread* AfxBeginThread(
AFX_THREADPROC pfnThreadProc,
LPVOID pParam,
int nPriority = THREAD_PRIORITY_NORMAL,
UINT nStackSize = 0,
DWORD dwCreateFlags = 0,
LPSECURITY_ATTRIBUTES lpSecurityAttrs = NULL
);
CWinThread* AfxBeginThread(
CRuntimeClass* pThreadClass,
int nPriority = THREAD_PRIORITY_NORMAL,
UINT nStackSize = 0,
DWORD dwCreateFlags = 0,
LPSECURITY_ATTRIBUTES lpSecurityAttrs = NULL
);
你用第二个函数就可以创建一个既有线程又有自己的窗口的东西了。
具体的用法很多MFC的书籍线程那章应该会讲,或者网上搜搜就可以了。
MFC提供两种线程,一种工作线程,不带界面的。另外一种就是可以带界面的线程了。如下代码:
CWinThread* AfxBeginThread(
AFX_THREADPROC pfnThreadProc,
LPVOID pParam,
int nPriority = THREAD_PRIORITY_NORMAL,
UINT nStackSize = 0,
DWORD dwCreateFlags = 0,
LPSECURITY_ATTRIBUTES lpSecurityAttrs = NULL
);
CWinThread* AfxBeginThread(
CRuntimeClass* pThreadClass,
int nPriority = THREAD_PRIORITY_NORMAL,
UINT nStackSize = 0,
DWORD dwCreateFlags = 0,
LPSECURITY_ATTRIBUTES lpSecurityAttrs = NULL
);
你用第二个函数就可以创建一个既有线程又有自己的窗口的东西了。
具体的用法很多MFC的书籍线程那章应该会讲,或者网上搜搜就可以了。
全部回答
- 1楼网友:污到你湿
- 2021-03-16 14:40
获取视图类指针,pview->invalidate(); 不要去发送重绘消息,而是通过系统提供的函数,比如invalidate函数,由系统去发。
- 2楼网友:长青诗
- 2021-03-16 13:47
创建一个窗口你会不?
win32的基本编程。
别人怎么说只做你参考。具体怎么做不是还得靠你自己吗?
- 3楼网友:末日狂欢
- 2021-03-16 12:09
说的好专业化。。。。吓我一跳。。仔细一看,原来就是学校入门书上的第二章。。。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯