wParam和lParam消息

1 WM_PAINT消息,LOWORD(lParam)是客戶區的寬,HIWORD(lParam)是客戶區的高

 
    2 滾動條WM_VSCROLL或WM_HSCROLL消息,LOWORD(wParam)指出了鼠標對滾動條的操作。比如上、下、左、右、翻頁、移動等。
 
    3 擊鍵消息,有WM_SYSKEYDOWN、WM_SYSKEYUP、WM_KEYUP、WM_KEYDOWN,其中wParam是虛擬鍵代碼,lParam是包含屬於擊鍵的其他信息。lParam消息參數分爲6個域,有重複計數、環境代碼、鍵的先前狀態等。
 
    4 字符消息WM_CHAR、WM_DEADCHAR、WM_SYSCHAR、WM_SYSDEADCHAR,lParam消息參數跟擊鍵消息的lParam消息參數內容相同,wParam參數是ANSI或Unicode字符代碼
 
    5 客戶區鼠標消息WM_LBUTTONDOWN、WM_LBUTTONUP、WM_RBUTTONDOWN、WM_RBUTTONUP、WM_MBUTTONDOWN、WM_MBUTTONUP,lParam參數的低位是鼠標的客戶區x座標,高位是客戶區y座標。wParam參數是指示鼠標鍵及Shift和Ctrl鍵的狀態。wParam&MK_SHIFT或MK_CTRL,如果返回TRUE就意味着有按下Shift或Ctrl鍵。
 
    6 非客戶區消息,wParam參數指明移動或者單擊鼠標鍵的非客戶區位置,以HT開頭,lParam參數低位指出了鼠標所在屏幕座標的x座標,高位指出了鼠標所在屏幕座標的y座標。
 
    7 鼠標輪滾動消息,WM_MOUSEWHEEL消息,lParam將獲得鼠標的屏幕位置(座標),wParam參數的低位表明鼠標鍵和Shift與Ctrl鍵的狀態。wParam高位有一個“delta”值,該值可正可負,指出了滾輪導致屏幕滾動幾行,120表示向上3行。
 
    8 計時器消息WM_TIMER,wParam參數等於計時器的ID值,lParam爲0
 
    9 按鈕子窗口的WM_COMMAND消息,wParam參數的低位是子窗口ID,高位是通知碼, lParam參數是子窗口句柄。
 
    10 焦點消息,對於正在失去焦點的窗口,會收到WM_KILLFOCUS消息,其wParam參數是即將接收輸入焦點的窗口的句柄。對於即將獲取焦點的窗口,會收到WM_SETFOCUS消息,其wParam參數是正在失去焦點的窗口的句柄。
 
    11 編輯控制的WM_COMMAND消息,wParam參數的低位是子窗口ID,高位是通知碼, lParam參數是子窗口句柄。
 
    12 列表框的WM_COMMAND消息,wParam參數的低位是子窗口ID,高位是通知碼, lParam參數是子窗口句柄。
 
    13 菜單消息1,WM_INITMENU,wParam是主菜單句柄,lParam是0.
 
    14 菜單消息2,WM_MENUSELECT,菜單跟蹤消息,指針移到菜單的某一些,就會發送這個消息給窗口過程,其wParam參數的低位是選中項菜單的ID或者彈出式菜單的句柄,高位是選擇標識,lParam參數是包含選中項的菜單句柄。
    
    15 菜單消息3,WM_INITMENUPOPUP,準備顯示一個彈出式菜單時產生的消息,wParam參數是彈出式菜單的句柄,lParam的低位是彈出式菜單的索引,如果該菜單是系統菜單,那麼高位是1,否則爲0.
 
    16 菜單消息4,WM_COMMAND,選中菜單後產生,wParam低位是擊中菜單的ID,高位是0,lParam參數也是0
 
    17 菜單消息5,WM_SYSCOMMAND,表示用戶從系統菜單中選擇一個啓用的菜單項,其wParam參數是菜單的ID, lParam爲0.如果該消息是由按鼠標產生的,那麼lParam參數是鼠標的屏幕座標。
 
    18 加速鍵消息,WM_COMMAND消息,wParam低位是加速鍵ID,高位是1, lParam是0.
 

消息

說明

wParam

lParam

WM_PAINT

 

 

低位是客戶區的寬

高位是客戶區的高

WM_VSCROLL

WM_HSCROLL

窗口滾動條消息

低位指出了鼠標對滾動條的操作

 

 

擊鍵消息

虛擬鍵代碼

分爲6個域,有重複計數、環境代碼、鍵的先前狀態等

 

字符消息

ANSI或Unicode字符代碼

分爲6個域,有重複計數、環境代碼、鍵的先前狀態等

 

客戶區鼠標消息

指示鼠標鍵及Shift和Ctrl鍵的狀態

鼠標的客戶區座標

 

非客戶區鼠標消息

指明移動或者單擊鼠標鍵的非客戶區位置,以HT開頭

鼠標的屏幕座標

WM_MOUSEWHEEL

鼠標輪滾動消息

低位表明鼠標鍵和Shift與Ctrl鍵的狀態

高位指出了滾輪導致屏幕滾動幾行

鼠標的屏幕位置

WM_TIMER

計時器消息

計時器的ID值

0

WM_COMMAND

按鈕

低位是子窗口ID,高位是通知碼

子窗口句柄

WM_SETFOCUS

焦點消息

正在失去焦點的窗口的句柄

 

WM_KILLFOCUS

焦點消息

即將接收輸入焦點的窗口的句柄

 

WM_COMMAND

編輯控制

低位是子窗口ID,高位是通知碼

子窗口句柄

WM_COMMAND

列表框

低位是子窗口ID,高位是通知碼

子窗口句柄

WM_INITMENU

 

主菜單句柄

0

WM_MENUSELECT

菜單跟蹤消息

低位是選中項菜單的ID或者彈出式菜單的句柄,高位是選擇標識

選中項的菜單句柄

WM_INITMENUPOPUP

準備顯示一個彈出式菜單時產生

彈出式菜單的句柄

低位是彈出式菜單的索引,如果該菜單是系統菜單,那麼高位是1,否則爲0.

 

WM_COMMAND

選中菜單後產生

低位是擊中菜單的ID

高位是0

0

WM_SYSCOMMAND

用戶從系統菜單中選擇一個啓用的菜單項

菜單的ID

0如果該消息是由按鼠標產生的,那麼是鼠標的屏幕座標。

WM_COMMAND

加速鍵消息

低位是加速鍵ID

高位是1

0

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章