duilib中HandleMessage()与HandleCustomerMessage()区别 以及他们与Messagehandle的关联
一个窗口被创建,它会有一个消息循环处理模块,比如:
while( GetMessage(&Msg, NULL, 0, 0))
{
TranslateMessage( &Msg) ;
DispatchMessage( &Msg) ;
}
DUILIB中 的窗口过程函数 是 HandleMessage,消息过滤函数是 MessageHandler 即:
while( GetMessage(&Msg, NULL, 0, 0))// 这里进入MessageHandler
{
TranslateMessage( &Msg) ; //这里进入 HandleMessage
DispatchMessage( &Msg) ;
}
HandleCustomerMessage 这个没看到过.
都是继承父类之后,可重写的虚函数,都可以接收并处理消息,但有一些区别
HandleMessage(UINT uMsg, WPARAM, LPARAM):消息处理(uMsg标识类型,如‘WM_CREATE’等)函数,所有消息都可在此截获,Notify与HandleCustomMessage都在此函数中调用的;若重载,函数结尾需要调用父类消息处理函数__super::HandleMessage
HandleCustomMessage:一般推荐继承此函数来处理消息;