线程里加消息函数编译通不过

work1s 2011-08-08 04:19:34
错误提示: error C2440: “static_cast”: 无法从“LRESULT (__thiscall 应答类::* )(WPARAM,LPARAM)”转换为“LRESULT (__thiscall CWnd::* )(WPARAM,LPARAM)”
1> 在匹配目标类型的范围内没有具有该名称的函数

.h文件
class 应答类 : public CWinThread
{
DECLARE_DYNCREATE(应答类)

public:
应答类(); // 动态创建所使用的受保护的构造函数
virtual ~应答类();


virtual BOOL InitInstance();
virtual int ExitInstance();
int Run(void);
protected:

DECLARE_MESSAGE_MAP()

public:
afx_msg LRESULT 应答函数(WPARAM wparam,LPARAM lparam);


.cpp 文件
BEGIN_MESSAGE_MAP(进度指示类, CDialog)
ON_MESSAGE(_消息根_进度条消息,进度条处理函数)
END_MESSAGE_MAP()
.
.
.
LRESULT 应答类::应答函数(WPARAM wparam,LPARAM lparam)
{
return 1;
}
搞不懂是什么情况,请高手指导下啊?如果说线程无法接收消息,该如何处理啊,我的目的是在激活线程的同时,传递个指针到线程的应答函数中
...全文
58 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
work1s 2011-08-08
  • 打赏
  • 举报
回复
ON_THREAD_MESSAGE(WM_MYMESSAGE,mymessage)

用这个函数
Eleven 2011-08-08
  • 打赏
  • 举报
回复
你的消息映射是不是加错地方了,你的消息函数是定义在CWinThread的派生类中,但是你的ON_MESSAGE好像不是写在这个类的cpp中吧,你貌似你写在对话框类中
work1s 2011-08-08
  • 打赏
  • 举报
回复
中文编程不是梦啦,现在都支持中文变量和函数名了,指令那些在做些宏就完全是中文了.
这么说线程类没法用ON_MESSAGE函数了?可明明有消息循环在啊?
buyong 2011-08-08
  • 打赏
  • 举报
回复
我也希望有一天全世界都用中文编程,最好更彻底些。
类 应答类
{
声明_动态创建(应答类)
公开:
应答类();
虚拟 ~应答类();
}

这样外国人一定看不懂我们的代码。开源也不怕被窃取。
buyong 2011-08-08
  • 打赏
  • 举报
回复
太酷了
居然能用中文编程!
你的:class 应答类 : public CWinThread
这样:class 应答类 就不是CWnd的派生字类。

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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