标签:函数 lpm width 自定义消息 消息队列 pre wms size def
自定义windows消息
#define MY_MSG (WM_USER+1)
//为了防止用户自定义消息ID与系统消息ID冲突,用户只能定义WM_USER(0x0400)以后的ID使用
PostThreadMessage 将一个队列消息放入(寄送)到指定线程的消息队列里,不等待线程处理消息就返回
BOOL PostThreadMessage( DWORD idThread, //接收消息的线程标识符 UINT Msg, //指定被寄送的消息 WPARAM wParam, /附加的消息特定信息 LPARAM IParam //附加的消息特定信息 ); //线程没有消息队列,此函数将失败
目标线程通过GetMessage()方法来接收消息,若无消息则阻塞
BOOL GetMessage(
LPMSG lpMsg, //接收消息的线程ID
HWND hWnd, //取得消息的窗口的句柄,为NULL时获取所属线程的消息
UINT wMsgFilterMin,//指定被检索的最小消息值的整数。
UINT wMsgFilterMax //指定被检索的最大消息值的整数
);
PeekMessage 为一个消息检查线程消息队列,并将该消息(如果存在)放于指定的结构(窥探消息队列中的消息)
BOOL PeekMessage(
LPMSG IpMsg, //接收消息的线程ID
HWND hWnd, //取得消息的窗口句柄,为NULL时获取所属线程的消息
UINT wMSGfilterMin,//指定被检索的最小消息值的整数
UINT wMsgFilterMax,//指定被检索的最大消息值的整数
UINT wRemoveMsg
);
wRemoveMsg 可取下列值
PM_NOREMOVE PeekMessage处理后,消息不从队列里除掉。
PM_REMOVE PeekMessage处理后,消息从队列里除掉。
PM_NOYIELD 此标志使系统不释放等待调用程序空闲的线程。可将PM_NOYIELD随意组合到PM_NOREMOVE或PM_REMOVE
标签:函数 lpm width 自定义消息 消息队列 pre wms size def
原文地址:https://www.cnblogs.com/liu6666/p/12730192.html