有没有办法CHAIN_MSG_MAP_MEMBER
与调用DefWindowProc
其处理函数之一的未启动窗口类一起使用?
问题是如果成员窗口类没有被创建或子类化,那么它就DefWindowProc
不能工作。
但是,如果您仍想尝试将其程序链接为会员怎么办?有解决方法吗?感谢您的任何帮助。
这是我正在谈论的一个例子。 CChainedMember
的调用DefWindowProc()
将毫无用处,因为m_wndChainedMember
它本身永远不会被创建或子类化。它仅用于链接目的。
class CChainedMember : public CWindowImpl<CChainedMember>
{
public:
BEGIN_MSG_MAP(CChainedMember)
MESSAGE_HANDLER(WM_CREATE, OnCreate)
END_MSG_MAP()
LRESULT OnCreate(UINT, WPARAM, LPARAM, BOOL)
{
ATLTRACE(L"doing something before");
DefWindowProc();
ATLTRACE(L"doing something after");
return 0;
}
}
class CMainWindow : public CWindowImpl<CMainWindow>
{
public:
BEGIN_MSG_MAP(CMainWindow)
CHAIN_MSG_MAP_MEMBER(m_wndChainedMember)
END_MSG_MAP()
CChainedMember m_wndChainedMember;
}
编辑:请忽略。我误解了CHAIN_MSG_MAP_MEMBER
.