小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

VC/MFC中常用消息總結(jié)

 筆錄收藏 2012-09-11

CButton::Create
BOOL Create( LPCTSTR lpszCaption, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID );
動態(tài)創(chuàng)建一個按紐
LPCTSTR lpszCaption  按紐文字
DWORD dwStyle 按紐樣式,常選用BS_DEFPUSHBUTTON表示下壓式按紐,
控件本身也是窗口,因此還具有窗口類型,如讓控件創(chuàng)建后即可見,可給控件WS_VISIBLE,
通常還具有WS_CHILD屬性
const RECT& rect    矩形區(qū)域,可以是CRect類型,也可是Rect結(jié)構(gòu)體。可直接由CRect構(gòu)造,如CRect (0,0,10,10).。
CWnd* pParentWnd 為父窗口指針,若消息響應(yīng)在父類中,可直接用this指針。UINT nID 可隨便給(只能為數(shù)字?)。
注意用此函數(shù)時需判斷該控件是否已與該控件窗口已關(guān)聯(lián),因為若關(guān)聯(lián)兩次會出現(xiàn)錯誤,動態(tài)創(chuàng)建控件好象只能創(chuàng)建一個控件。
 
CWnd::GetDlgItem
CWnd* GetDlgItem( int nID ) const;
用此函數(shù)可通過控件ID獲得指定控件的指針,一般此函數(shù)用于一個對話框類中。
 
 CWnd::GetWindowText
int GetWindowText( LPTSTR lpszStringBuf, int nMaxCount ) const;
void GetWindowText( CString& rString ) const;
此函數(shù)可獲得指定控件上的文本信息并把它保存在一個CString對象或char型數(shù)組中。
第一個重載函數(shù)中nMaxCount指能夠復(fù)制到BUFFER中的最大字符數(shù)
 
CWnd::SetWindowText
void SetWindowText( LPCTSTR lpszString );
該函數(shù)用于設(shè)置窗體尤其是控件文本。(該函數(shù)是否可向窗口輸出字符串?)
 
atoi
int atoi( const char *string );
該函數(shù)可將字符串轉(zhuǎn)換為整形值并返回。
類似的函數(shù)如下:
long atol( const char *string );
double atof( const char *string );
如果字符不能轉(zhuǎn)化為相應(yīng)的類型則返回0
itoa
char *_itoa( int value, char *string, int radix );
第一個參數(shù)是要轉(zhuǎn)換的整形值,第二個參數(shù)是目標(biāo)字符串的指針,第三個參數(shù)代表進制。
(回值干什么用的?)
 
CWnd::GetDlgItemText
int GetDlgItemText( int nID, LPTSTR lpStr, int nMaxCount ) const;
int GetDlgItemText( int nID, CString& rString ) const;
該函數(shù)可通過控件ID來獲取控件文本并把它保存在CString 的一個對象中或char型數(shù)組中,因為數(shù)組會有最大字符數(shù),因此第一個重載函數(shù)還有nMaxCount參數(shù)。
 
CWnd::SetDlgItemText
void SetDlgItemText( int nID, LPCTSTR lpszString );
將字符串中字符放回nID所指定的控件中
 
CWnd::GetDlgItemInt
UINT GetDlgItemInt( int nID, BOOL* lpTrans = NULL, BOOL bSigned = TRUE ) const;
該函數(shù)作用是接收指定控件文本并作為整形數(shù)返回
nID為控件ID,第二個參數(shù)若為NULL則若字符無法轉(zhuǎn)換為數(shù)字時會接受一個零而不會報錯,第三個參數(shù)若為TRUE則檢查文本開始處的有無符號,即數(shù)據(jù)做有符號數(shù)處理,若為FALSE則作無符號數(shù)處理。
 
CWnd::SetDlgItemInt
void SetDlgItemInt( int nID, UINT nValue, BOOL bSigned = TRUE );
該函數(shù)是將整形值直接傳入ID標(biāo)識的控件作為控件文本。
nID為控件ID,第二個參數(shù)為要傳入的整形值,第三個參數(shù)為真則為有符號值,反之則為無符號值
 
CWnd::ShowWindow
BOOL ShowWindow( int nCmdShow );
常用nCmdShow的參數(shù)值
SW_HIDE   隱藏窗口或控件
SW_SHOW   正常顯示窗口或控件
一般由窗口類或窗口類的派生類產(chǎn)生一個窗口后都需要調(diào)用該函數(shù)將窗口顯示出來,不過有時不需要顯式調(diào)用而有時必須顯示調(diào)用
 
CWnd::PostMessage
BOOL PostMessage( UINT message, WPARAM wParam = 0, LPARAM lParam = 0 );
CWnd::SendMessage
LRESULT SendMessage( UINT message, WPARAM wParam = 0, LPARAM lParam = 0 );
可用于各窗體或控件之間的消息通信。
如常用的獲取窗體或控件的文本消息WM_GETTEXT,用WM_GETTEXT時參數(shù):
WPARAM為要copy的最大字符數(shù),LPARAM為存儲的buffer區(qū),若為char型數(shù)組則需要強制類型轉(zhuǎn)換
設(shè)置窗體文本的消息WM_SETTEXT,參數(shù)含義:
wParam 未被使用,設(shè)為0 ,lParam 為要設(shè)置的文本的存儲單元地址;
設(shè)置編輯框文本復(fù)選的消息為EM_SETSEL
EM_SETSEL
wParam = (WPARAM) (INT) nStart;    // starting position
lParam = (LPARAM) (INT) nEnd;      // ending position
wParam為復(fù)選起始位置,lParam為復(fù)選結(jié)束位置。注意,若最后鼠標(biāo)焦點不在編輯框上則無法顯示文本復(fù)選,因此一般最后會加上一個SetFocus函數(shù)。
獲取編輯框文本復(fù)選的消息為 EM_GETSEL
wParam = (WPARAM) (LPDWORD) lpdwStart; // receives starting position
lParam = (LPARAM) (LPDWORD) lpdwEnd;   // receives ending position
wParam為一個DWORD類型數(shù)的指針,用于保存起始位置,lParam也為一個DWORD類型數(shù)的指針,用于保存結(jié)束位置。
 
CWnd::SendDlgItemMessage
LRESULT SendDlgItemMessage( int nID, UINT message, WPARAM wParam = 0, LPARAM lParam = 0 );
本函數(shù)用于對話框各控件的消息通信,獲取指定ID的消息,該函數(shù)不是被類的對象調(diào)用的。
 
CDC::TextOut
virtual BOOL TextOut( int x, int y, LPCTSTR lpszString, int nCount );
BOOL TextOut( int x, int y, const CString& str );
該函數(shù)可用于向指定窗口輸出一串文字,輸出成功則返回非0;
輸出文本顏色不是由畫筆控制的,而是由CD中的成員函數(shù)
CDC::SetTextColor
virtual COLORREF SetTextColor( COLORREF crColor );
指定。背景顏色由
CDC::SetBkColor
virtual COLORREF SetBkColor( COLORREF crColor );
指定。
 
SDK下該函數(shù)為:
BOOL TextOut(
  HDC hdc,           // handle to device context
  int nXStart,       // x-coordinate of starting position
  int nYStart,       // y-coordinate of starting position
  LPCTSTR lpString,  // pointer to string
 int cbString       // number of characters in string
);
 
CWnd::SetFocus
CWnd* SetFocus( );
該函數(shù)為設(shè)置鼠標(biāo)焦點的函數(shù),返回的是原先具有焦點的窗體指針。
 
CWnd::GetWindowRect
void GetWindowRect( LPRECT lpRect ) const;
該函數(shù)獲得窗口矩形區(qū)域信息并將信息保存在CRect或Rect結(jié)構(gòu)體中
 
CWnd::SetWindowPos
BOOL SetWindowPos( const CWnd* pWndInsertAfter, int x, int y, int cx, int cy, UINT nFlags );
該函數(shù)可用于設(shè)置窗口的大小以及窗口的層疊次序。
第二,三個參數(shù)為窗口的左上角的x與y值,第四個參數(shù)為窗口的寬度,第五個參數(shù)為窗口的高度,最后一個參數(shù)為設(shè)置顯示屬性,如若要窗口顯示位置不改變,nFlags可設(shè)置為 SWP_NOMOVE   ,此時將忽略x與y值,
 
SetWindowLong
LONG SetWindowLong(
  HWND hWnd,       // handle of window
  int nIndex,      // offset of value to set
  LONG dwNewLong   // new value
);
 
API函數(shù),可用于改變指定窗口的一個屬性,當(dāng)nIndex取GWL_WNDPROC,
可用于替換一個窗口過程。
 
GetNextWindow
HWND GetNextWindow(
  HWND hWnd,  // handle to current window
  UINT wCmd   // direction flag
);
SDK函數(shù),可獲取當(dāng)前控件的下一個控件的句柄,其中第一個參數(shù)為當(dāng)前控件的句柄,第二個參數(shù)可取GW_HWNDNEXT或GW_HWNDPREV,若取GW_HWNDNEXT則獲取下一個控件句柄,若取GW_HWNDPREV則獲取當(dāng)前句柄的前一個控件句柄
 
GetWindow
HWND GetWindow(
  HWND hWnd,  // handle to original window
  UINT uCmd   // relationship flag
);
該函數(shù)功能與GetNextWindow相似,但功能比GetNextWindow更強大,其中的nCmd選項可選GW_HWNDNEXT與GW_HWNDPREV外還可選擇:
GW_CHILD表示獲取當(dāng)前控件子控件句柄,GW_HWNDFIRST與 GW_HWNDLASTfenbie分別表示獲取第一個與最后一個控件句柄。
 
GetNextDlgTabItem
HWND GetNextDlgTabItem(
  HWND hDlg,       // handle of dialog box
  HWND hCtl,       // handle of known control
  BOOL bPrevious   // direction flag
);
 
CWnd::GetNextWindow
CWnd* GetNextWindow( UINT nFlag = GW_HWNDNEXT ) const;
此函數(shù)返回指向當(dāng)前控件的下一個控件的指針。
 
CWnd::ModifyStyle
BOOL ModifyStyle(DWORD dwRemove,DWORD dwAdd, UINT nFlags = 0 );
此函數(shù)用于替換指定窗口的樣式,第一個參數(shù)DWORD dwRemove,為要去掉的窗口樣式,第二個參數(shù)DWORD dwAdd為將要添加的窗口樣式,第三個參數(shù)為0則窗口不重繪,非0則窗口重繪。
 
LPTSTR MAKEINTRESOURCE(
  WORD wInteger  // integer to convert
);
該函數(shù)可以將一個整形值轉(zhuǎn)換為一個資源類型的值,一般用于將一個資源的ID標(biāo)示轉(zhuǎn)換為資源的名字的字符串
 
封裝所有字符串操作的類CString類,常用方法:
CString::Format:格式化輸出一個字符串用法與c語言中Printf()相類似
CString::operator +=:可以連接一個字符串
 
DWORD GetCurrentDirectory(
  DWORD nBufferLength,  // size, in characters, of directory buffer
  LPTSTR lpBuffer       // pointer to buffer for current directory
);
該函數(shù)為SDK平臺下的函數(shù),作用是獲取當(dāng)前目錄下所有文件名,并將當(dāng)前目錄下所有文件的文件名放入lpBuffer指向的字符數(shù)組中。

  VC常用消息總結(jié) 收藏
以下資料主要來自互聯(lián)網(wǎng),感謝相關(guān)兄弟的無私奉獻:

0 ~ WM_USER – 1
系統(tǒng)消息

WM_USER ~ 0x7FFF
自定義窗口類整數(shù)消息

WM_APP ~ 0xBFFF
應(yīng)用程序自定義消息

0xC000 ~ 0xFFFF
應(yīng)用程序字符串消息

> 0xFFFF
為以后系統(tǒng)應(yīng)用保留

 常用Windows消息:

消息名稱                值                        說 明

WM_NULL               0x0000         空消息,此消息將被接收窗口忽略
WM_CREATE             0x0001             應(yīng)用程序創(chuàng)建一個窗口
WM_DESTROY            0x0002                  一個窗口被銷毀
WM_MOVE               0x0003                    移動一個窗口
WM_SIZE               0x0005                改變一個窗口的大小

WM_ACTIVATE           0x0006           一個窗口被激活或失去激活狀態(tài)
WM_SETFOCUS           0x0007                    獲得焦點后
WM_KILLFOCUS          0x0008                      失去焦點
WM_ENABLE             0x000A              應(yīng)用程序Enable狀態(tài)改變時產(chǎn)生

WM_SETREDRAW          0x000B                    設(shè)置窗口是否能重畫
WM_SETTEXT            0x000C        應(yīng)用程序發(fā)送此消息來設(shè)置一個窗口的文本
 
WM_GETTEXT
0x000D
應(yīng)用程序發(fā)送此消息來復(fù)制對應(yīng)窗口的文本到緩沖區(qū)

WM_GETTEXTLENGTH
0x000E
得到與一個窗口有關(guān)的文本的長度(不包含空字符)

WM_PAINT
0x000F
要求一個窗口重繪自己

WM_CLOSE
0x0010
當(dāng)一個窗口或應(yīng)用程序要關(guān)閉時發(fā)送一個信號

WM_QUERYENDSESSION
0x0011
用戶選擇結(jié)束對話框或應(yīng)用程序自己調(diào)用ExitWindows()函數(shù)

WM_QUIT
0x0012
用來結(jié)束程序運行或應(yīng)用程序調(diào)用Postquitmessage()函數(shù)來產(chǎn)生此消息

WM_QUERYOPEN
0x0013
當(dāng)用戶窗口恢復(fù)以前的大小位置時,把此消息發(fā)送給某個圖標(biāo)

WM_ERASEBKGND
0x0014
當(dāng)窗口背景必須被擦除時(例如在窗口改變大小時)

WM_SYSCOLORCHANGE
0x0015
當(dāng)系統(tǒng)顏色改變時,發(fā)送此消息給所有頂級窗口

WM_ENDSESSION
0x0016
當(dāng)系統(tǒng)進程發(fā)出WM_QUERYENDSESSION消息后,此消息發(fā)送給應(yīng)用程序

WM_SHOWWINDOW
0x0018
當(dāng)隱藏或顯示窗口是發(fā)送此消息給這個窗口

WM_ACTIVATEAPP
0x001C
當(dāng)某個窗口將被激活時,將被激活窗口和當(dāng)前活動(即將失去激活)窗口會收到此消息,發(fā)此消息給應(yīng)用程序哪個窗口是激活的,哪個是非激活的

WM_FONTCHANGE
0x001D
當(dāng)系統(tǒng)的字體資源庫變化時發(fā)送此消息給所有頂級窗口

WM_TIMECHANGE
0x001E
當(dāng)系統(tǒng)的時間變化時發(fā)送此消息給所有頂級窗口

WM_CANCELMODE
0x001F
發(fā)送此消息來取消某種正在進行的操作

WM_SETCURSOR
0x0020
如果鼠標(biāo)引起光標(biāo)在某個窗口中移動且鼠標(biāo)輸入沒有被捕獲時,發(fā)消息給該窗口

WM_MOUSEACTIVATE
0x0021
當(dāng)光標(biāo)在某個非激活的窗口中而用戶正按著鼠標(biāo)的某個鍵發(fā)送此消息給當(dāng)前窗口

WM_CHILDACTIVATE
0x0022
發(fā)送此消息給MDI子窗口當(dāng)用戶點擊此窗口的標(biāo)題欄,或當(dāng)窗口被激活、移動、改變大小

WM_QUEUESYNC
0x0023
此消息由基于計算機的訓(xùn)練程序發(fā)送,通過WH_JOURNALPALYBACK的Hook程序分離出用戶輸入消息

WM_GETMINMAXINFO
0x0024
當(dāng)窗口要將要改變大小或位置時,發(fā)送此消息給該窗口

WM_PAINTICON
0x0026
當(dāng)窗口圖標(biāo)將要被重繪時,發(fā)送此消息給該窗口

WM_ICONERASEBKGND
0x0027
在一個最小化窗口的圖標(biāo)在重繪前,當(dāng)圖標(biāo)背景必須被重繪時,發(fā)送此消息給該窗口

WM_NEXTDLGCTL
0x0028
發(fā)送此消息給一個對話框程序以更改焦點位置

WM_SPOOLERSTATUS
0x002A
當(dāng)打印管理列隊增加或減少一條作業(yè)時發(fā)出此消息

WM_DRAWITEM
0x002B
當(dāng)Button,ComboBox,Listbox,Menu控件的外觀改變時,發(fā)送此消息給這些控件的所有者

WM_MEASUREITEM
0x002C
當(dāng)Button,ComboBox,list box,ListView,Menu 項被創(chuàng)建時,發(fā)送此消息給控件的所有者

WM_DELETEITEM
0x002D
當(dāng)ListBox 或 ComboBox 被銷毀或當(dāng)某些項通過發(fā)送LB_DELETESTRING、LB_RESETCONTENT、 CB_DELETESTRING、CB_RESETCONTENT 消息被刪除時,發(fā)送此消息給控件的所有者

WM_VKEYTOITEM
0x002E
一個具有LBS_WANTKEYBOARDINPUT風(fēng)格的ListBox控件發(fā)送此消息給它的所有者,以此來響應(yīng)WM_KEYDOWN消息

WM_CHARTOITEM
0x002F
一個具有LBS_WANTKEYBOARDINPUT風(fēng)格的ListBox控件發(fā)送此消息給它的所有者,以此來響應(yīng)WM_CHAR消息

WM_SETFONT
0x0030
應(yīng)用程序繪制控件時,發(fā)送此消息得到以何種字體繪制控件中的文本

WM_GETFONT
0x0031
應(yīng)用程序發(fā)送此消息得到當(dāng)前控件繪制文本的字體

WM_SETHOTKEY
0x0032
應(yīng)用程序發(fā)送此消息讓一個窗口與一個熱鍵相關(guān)聯(lián)

WM_GETHOTKEY
0x0033
應(yīng)用程序發(fā)送此消息來判斷熱鍵與某個窗口是否有關(guān)聯(lián)

WM_QUERYDRAGICON
0x0037
此消息發(fā)送給最小化窗口,當(dāng)此窗口將要被拖放而它的類中沒有定義圖標(biāo),應(yīng)用程序就返回一個圖標(biāo)或光標(biāo)的句柄,當(dāng)用戶拖放圖標(biāo)時系統(tǒng)顯示這個圖標(biāo)或光標(biāo)

WM_COMPAREITEM
0x0039
發(fā)送此消息來判定ComboBox或ListBox新增加的項的相對位置

WM_COMPACTING
0x0041
顯示內(nèi)存已經(jīng)很少了

WM_WINDOWPOSCHANGING
0x0046
當(dāng)調(diào)用SetWindowPos()函數(shù)改變窗口的大小和位置后,發(fā)送此消息給該窗口

WM_POWER
0x0048
當(dāng)系統(tǒng)將進入掛起狀態(tài)時發(fā)送此消息給所有進程

WM_COPYDATA
0x004A
當(dāng)一個應(yīng)用程序傳遞數(shù)據(jù)給另一個應(yīng)用程序時發(fā)送此消息

WM_CANCELJOURNAL
0x004B
當(dāng)某個用戶取消程序日志激活狀態(tài),發(fā)送此消息給應(yīng)用程序

WM_NOTIFY
0x004E
當(dāng)某個控件的某個事件已經(jīng)發(fā)生或這個控件需要得到一些信息時,發(fā)送此消息給它的父窗口

WM_INPUTLANGCHANGEREQUEST
0x0050
當(dāng)用戶選擇某種輸入語言,或輸入語言的熱鍵改變

WM_INPUTLANGCHANGE
0x0051
當(dāng)應(yīng)用程序輸入語言改變后發(fā)送此消息給受影響的最頂級窗口

WM_TCARD
0x0052
當(dāng)應(yīng)用程序已經(jīng)初始化Windows幫助例程時發(fā)送此消息給應(yīng)用程序

WM_HELP
0x0053
當(dāng)用戶按下了F1,如果某個菜單是激活的,就發(fā)送此消息給此窗口關(guān)聯(lián)的菜單,否則就發(fā)送給有焦點的窗口,如果當(dāng)前都沒有焦點,就把此消息發(fā)送給當(dāng)前激活的窗口

WM_USERCHANGED
0x0054
當(dāng)用戶已經(jīng)登錄或退出后發(fā)送此消息給所有的窗口,當(dāng)用戶登錄或退出時系統(tǒng)更新用戶的具體設(shè)置信息,在用戶更新設(shè)置時系統(tǒng)馬上發(fā)送此消息

WM_NOTIFYFORMAT
0x0055
公用控件和它們的父窗口通過此消息來判斷在WM_NOTIFY消息中是使用ANSI還是UNICODE形式的結(jié)構(gòu),使用此控件能使某個控件與它的父控件進行相互通信

WM_CONTEXTMENU
0x007B
當(dāng)用戶在某個窗口中點擊右鍵,則發(fā)送此消息給該窗口

WM_STYLECHANGING
0x007C
當(dāng)將要調(diào)用SetWindowLong()函數(shù)窗口的一個或多個風(fēng)格時,發(fā)送此消息給該窗口

WM_STYLECHANGED
0x007D
當(dāng)調(diào)用SetWindowLong()函數(shù)改變了窗口的一個或多個風(fēng)格后,發(fā)送此消息給該窗口

WM_DISPLAYCHANGE
0x007E
當(dāng)顯示器的分辨率改變后發(fā)送此消息給所有的窗口

WM_GETICON
0x007F
發(fā)送此消息給某個窗口,返回與某個窗口有關(guān)聯(lián)的大圖標(biāo)或小圖標(biāo)的句柄

WM_SETICON
0x0080
應(yīng)用程序發(fā)送此消息讓一個新的大圖標(biāo)或小圖標(biāo)與某個窗口關(guān)聯(lián)

WM_NCCREATE
0x0081
當(dāng)某個窗口第一次被創(chuàng)建時,此消息在WM_CREATE消息被發(fā)送前發(fā)送

WM_NCDESTROY
0x0082
此消息通知某個窗口,正在銷毀非客戶區(qū)

WM_NCCALCSIZE
0x0083
當(dāng)計算某個窗口的客戶區(qū)大小和位置時發(fā)送此消息

WM_NCHITTEST
0x0084
移動鼠標(biāo),按住或釋放鼠標(biāo)時產(chǎn)生此消息

WM_NCPAINT
0x0085
當(dāng)某個窗口的框架必須被繪制時,應(yīng)用程序發(fā)送此消息給該窗口

WM_NCACTIVATE
0x0086
通過改變某個窗口的非客戶區(qū)來表示窗口是處于激活還是非激活狀態(tài)時,此消息被發(fā)送給該窗口

WM_NCMOUSEMOVE
0x00A0
當(dāng)光標(biāo)在窗口的非客戶區(qū)(窗口標(biāo)題欄及邊框)內(nèi)移動時發(fā)送此消息給該窗口

WM_NCLBUTTONDOWN
0x00A1
當(dāng)光標(biāo)在窗口的非客戶區(qū)并按下鼠標(biāo)左鍵時發(fā)送此消息

WM_NCLBUTTONUP
0x00A2
當(dāng)光標(biāo)在窗口的非客戶區(qū)并釋放鼠標(biāo)左鍵時發(fā)送此消息

WM_NCLBUTTONDBLCLK
0x00A3
當(dāng)光標(biāo)在窗口的非客戶區(qū)并雙擊鼠標(biāo)左鍵時發(fā)送此消息

WM_NCRBUTTONDOWN
0x00A4
當(dāng)光標(biāo)在窗口的非客戶區(qū)并按下鼠標(biāo)右鍵時發(fā)送此消息

WM_NCRBUTTONUP
0x00A5
當(dāng)光標(biāo)在窗口的非客戶區(qū)并釋放鼠標(biāo)右鍵時發(fā)送此消息

WM_NCRBUTTONDBLCLK
0x00A6
當(dāng)光標(biāo)在窗口的非客戶區(qū)并雙擊鼠標(biāo)右鍵時發(fā)送此消息

WM_NCMBUTTONDOWN
0x00A7
當(dāng)光標(biāo)在窗口的非客戶區(qū)并按下鼠標(biāo)中鍵時發(fā)送此消息

WM_NCMBUTTONUP
0x00A8
當(dāng)光標(biāo)在窗口的非客戶區(qū)并釋放鼠標(biāo)中鍵時發(fā)送此消息

WM_NCMBUTTONDBLCL
0x00A9
當(dāng)光標(biāo)在窗口的非客戶區(qū)并雙擊鼠標(biāo)中鍵時發(fā)送此消息

WM_KEYDOWN
0x0100
按下一個非系統(tǒng)鍵(按下鍵時未按下“ALT”鍵)

WM_KEYUP
0x0101
釋放一個非系統(tǒng)鍵

WM_CHAR
0x0102
按下某鍵,當(dāng)TranslateMessage()轉(zhuǎn)發(fā)WM_KEYDOWN后發(fā)送本消息

WM_DEADCHAR
0x0103
釋放某鍵,當(dāng)TranslateMessage()轉(zhuǎn)發(fā)WM_KEYUP后發(fā)送本消息

WM_SYSKEYDOWN
0x0104
當(dāng)按住ALT鍵同時按下其他鍵時發(fā)送此消息給擁有鍵盤焦點的窗口

WM_SYSKEYUP
0x0105
當(dāng)釋放一個鍵同時按住ALT鍵時發(fā)送此消息給擁有鍵盤焦點的窗口

WM_SYSCHAR
0x0106
當(dāng)TranslateMessage()轉(zhuǎn)發(fā)WM_SYSKEYDOWN后發(fā)送此消息給擁有鍵盤焦點的窗口

WM_SYSDEADCHAR
0x0107
當(dāng)TranslateMessage()轉(zhuǎn)發(fā)WM_SYSKEYUP后發(fā)送此消息給擁有鍵盤焦點的窗口

WM_INITDIALOG
0x0110
在被顯示前發(fā)送此消息對話框,通常用此消息初始化控件和執(zhí)行其他任務(wù)

WM_COMMAND
0x0111
選擇窗口菜單項或某個控件發(fā)送一條消息給它的父窗口或按下一個快捷鍵時產(chǎn)生此消息

WM_SYSCOMMAND
0x0112
選擇窗口菜單項或選擇最大化或最小化時,發(fā)送此消息給該窗口

WM_TIMER
0x0113
發(fā)生了定時器事件

WM_HSCROLL
0x0114
當(dāng)窗口水平滾動條產(chǎn)生一個滾動事件時發(fā)送此消息給該窗口和滾動條的所有者

WM_VSCROLL
0x0115
當(dāng)窗口垂直滾動條產(chǎn)生一個滾動事件時發(fā)送此消息給該窗口和滾動條的所有者

WM_INITMENU
0x0116
當(dāng)一個菜單將要被激活時發(fā)送此消息,它發(fā)生在按下菜單項或按下菜單快捷鍵時,它允許程序在顯示前更改菜單

WM_INITMENUPOPUP
0x0117
當(dāng)一個下拉菜單或子菜單將要被激活時發(fā)送此消息,它允許顯示前在修改菜單而不必更改整個菜單

WM_MENUSELECT
0x011F
選擇一條菜單項時發(fā)送此消息給菜單的所有者(一般是窗口)

WM_MENUCHAR
0x0120
當(dāng)菜單已被激活且用戶按下了某個鍵(非快捷鍵),發(fā)送此消息給菜單的所有者

WM_ENTERIDLE
0x0121
當(dāng)一個有模式對話框或菜單進入空閑狀態(tài)時發(fā)送此消息給它的所有者,空閑狀態(tài)指在處理完一條或幾條先前的消息后,消息列隊為空

WM_MENURBUTTONUP
0x0122
當(dāng)光標(biāo)位于菜單項上時,釋放鼠標(biāo)右鍵產(chǎn)生此消息

WM_MENUDRAG
0x0123
當(dāng)拖動菜單項時,發(fā)送此消息給拖放菜單的所有者

WM_MENUGETOBJECT
0x0124
當(dāng)光標(biāo)移入菜單項或者從菜單項中心移到菜單項頂部或底部時,發(fā)送此消息給拖放菜單的所有者

WM_UNINITMENUPOPUP
0x0125
當(dāng)下拉菜單或者子菜單被銷毀時產(chǎn)生此消息

WM_MENUCOMMAND
0x0126
當(dāng)用戶選擇菜單項時產(chǎn)生此消息

WM_CHANGEUISTATE
0x0127
應(yīng)用程序發(fā)送此消息表明用戶界面(UI)狀態(tài)應(yīng)當(dāng)被改變

WM_UPDATEUISTATE
0x0128
應(yīng)用程序發(fā)送此消息改變指定窗口及其子窗口的用戶界面(UI)狀態(tài)

WM_QUERYUISTATE
0x0129
應(yīng)用程序發(fā)送此消息得到某個窗口的用戶界面(UI)狀態(tài)

WM_CTLCOLORMSGBOX
0x0132
繪制消息框前發(fā)送此消息給它的父窗口,通過響應(yīng)這條消息,父窗口可以通過使用給定的相關(guān)顯示設(shè)備的句柄來設(shè)置消息框的文本和背景顏色

WM_CTLCOLOREDIT
0x0133
繪制編輯型控件前發(fā)送此消息給它的父窗口,可用來設(shè)置編輯框的文本和背景顏色

WM_CTLCOLORLISTBOX
0x0134
繪制列表框控件前發(fā)送此消息給它的父窗口,可用來設(shè)置編輯框的文本和背景顏色

WM_CTLCOLORBTN
0x0135
繪制按鈕控件前發(fā)送此消息給它的父窗口,可用來設(shè)置編輯框的文本和背景顏色

WM_CTLCOLORDLG
0x0136
繪制對話框前發(fā)送此消息給它的父窗口,可用來設(shè)置編輯框的文本和背景顏色

WM_CTLCOLORSCROLLBAR
0x0137
繪制滾動條控件前發(fā)送此消息給它的父窗口,可用來設(shè)置滾動條控件的文本和背景顏色

WM_CTLCOLORSTATIC
0x0138
繪制靜態(tài)控件前發(fā)送此消息給它的父窗口,可用來設(shè)置靜態(tài)控件的文本和背景顏色

WM_MOUSEMOVE
0x0200
鼠標(biāo)移動

WM_LBUTTONDOWN
0x0201
按下鼠標(biāo)左鍵

WM_LBUTTONUP
0x0202
釋放鼠標(biāo)左鍵

WM_LBUTTONDBLCLK
0x0203
雙擊鼠標(biāo)左鍵

WM_RBUTTONDOWN
0x0204
按下鼠標(biāo)右鍵

WM_RBUTTONUP
0x0205
釋放鼠標(biāo)右鍵

WM_RBUTTONDBLCLK
0x0206
雙擊鼠標(biāo)右鍵

WM_MBUTTONDOWN
0x0207
按下鼠標(biāo)中鍵

WM_MBUTTONUP
0x0208
釋放鼠標(biāo)中鍵

WM_MBUTTONDBLCLK
0x0209
雙擊鼠標(biāo)中鍵

WM_MOUSEWHEEL
0x020A
當(dāng)鼠標(biāo)滾輪轉(zhuǎn)動時發(fā)送此消息給當(dāng)前獲得焦點的窗口

WM_PARENTNOTIFY
0x0210
當(dāng)MDI子窗口被創(chuàng)建或被銷毀,或當(dāng)光標(biāo)位于子窗口上且用戶按了一下鼠標(biāo)鍵時,發(fā)送此消息給它的父窗口

WM_ENTERMENULOOP
0x0211
發(fā)送此消息通知應(yīng)用程序的主窗口進程已經(jīng)進入了菜單模式循環(huán)

WM_EXITMENULOOP
0x0212
發(fā)送此消息通知應(yīng)用程序的主窗口進程已經(jīng)退出了菜單模式循環(huán)

WM_SIZING
0x0214
調(diào)整窗口大小時發(fā)送此消息給窗口,通過此消息應(yīng)用程序可以監(jiān)視或修改窗口大小和位置

WM_CAPTURECHANGED
0x0215
當(dāng)窗口設(shè)定為不捕獲鼠標(biāo)事件時,發(fā)送此消息給該窗口

WM_MOVING
0x0216
移動窗口時發(fā)送此消息給窗口,通過此消息應(yīng)用程序可以監(jiān)視或修改窗口大小和位置

WM_POWERBROADCAST
0x0218
發(fā)送此消息給應(yīng)用程序通知它有關(guān)電源管理事件

WM_DEVICECHANGE
0x0219
當(dāng)設(shè)備的硬件配置改變時發(fā)送此消息給應(yīng)用程序或設(shè)備驅(qū)動程序

WM_MDICREATE
0x0220
應(yīng)用程序發(fā)送此消息給多文檔的客戶窗口來創(chuàng)建一個MDI 子窗口

WM_MDIDESTROY
0x0221
應(yīng)用程序發(fā)送此消息給多文檔的客戶窗口來關(guān)閉一個MDI 子窗口

WM_MDIACTIVATE
0x0222
應(yīng)用程序發(fā)送此消息給多文檔的客戶窗口通知客戶窗口激活另一個MDI子窗口,當(dāng)客戶窗口收到此消息后,它發(fā)出WM_MDIACTIVE消息給MDI子窗口(未激活)來激活它

WM_MDIRESTORE
0x0223
應(yīng)用程序發(fā)送此消息給MDI客戶窗口通知子窗口恢復(fù)到原來大小

WM_MDINEXT
0x0224
應(yīng)用程序發(fā)送此消息給MDI客戶窗口激活下一個或前一個窗口

WM_MDIMAXIMIZE
0x0225
應(yīng)用程序發(fā)送此消息給MDI客戶窗口以最大化一個MDI子窗口

WM_MDITILE
0x0226
應(yīng)用程序發(fā)送此消息給MDI客戶窗口以平鋪方式重新排列所有MDI子窗口

WM_MDICASCADE
0x0227
應(yīng)用程序發(fā)送此消息給MDI客戶窗口以層疊方式重新排列所有MDI子窗口

WM_MDIICONARRANGE
0x0228
應(yīng)用程序發(fā)送此消息給MDI客戶窗口重新排列所有最小化的MDI子窗口

WM_MDIGETACTIVE
0x0229
應(yīng)用程序發(fā)送此消息給MDI客戶窗口以找到激活的子窗口的句柄

WM_MDISETMENU
0x0230
應(yīng)用程序發(fā)送此消息給MDI客戶窗口用MDI菜單代替子窗口的菜單

WM_ENTERSIZEMOVE
0x0231
當(dāng)窗口進入移動或改變大小模式循環(huán)時,發(fā)送此消息給該窗口

WM_EXITSIZEMOVE
0x0232
當(dāng)窗口退出移動或改變大小模式循環(huán)時,發(fā)送此消息給該窗口

WM_DROPFILES
0x0233
當(dāng)用戶在應(yīng)用程序窗口中拖動某個文件時,產(chǎn)生此消息

WM_MDIREFRESHMENU
0x0234
應(yīng)用程序發(fā)送此消息給MDI客戶窗口以刷新窗口菜單

WM_MOUSEHOVER
0x02A1
當(dāng)光標(biāo)在窗口客戶區(qū)懸停超過TrackMouseEvent()指定的時間時,發(fā)送此消息給該窗口

WM_MOUSELEAVE
0x02A3
當(dāng)光標(biāo)離開窗口客戶區(qū)超過TrackMouseEvent()指定的時間時,發(fā)送此消息給該窗口

WM_CUT
0x0300
應(yīng)用程序發(fā)送此消息給一個編輯框或ComboBox以刪除當(dāng)前選擇的文本

WM_COPY
0x0301
應(yīng)用程序發(fā)送此消息給一個編輯框或ComboBox以復(fù)制當(dāng)前選擇的文本到剪貼板

WM_PASTE
0x0302
應(yīng)用程序發(fā)送此消息給一個編輯框或ComboBox以從剪貼板中得到數(shù)據(jù)

WM_CLEAR
0x0303
應(yīng)用程序發(fā)送此消息給一個編輯框或ComboBox以清除當(dāng)前選擇的內(nèi)容

WM_UNDO
0x0304
應(yīng)用程序發(fā)送此消息給一個編輯框或ComboBox以撤消最后一次操作

WM_DESTROYCLIPBOARD
0x0307
當(dāng)調(diào)用EmptyClipboard()清空剪貼板時,發(fā)送此消息給剪貼板所有者

WM_DRAWCLIPBOARD
0x0308
當(dāng)剪貼板的內(nèi)容變化時發(fā)送此消息給剪貼板觀察鏈中的第一個窗口,它允許用剪貼板觀察窗口來顯示剪貼板的新內(nèi)容

WM_PAINTCLIPBOARD
0x0309
當(dāng)剪貼板包含CF_OWNERDIPLAY格式的數(shù)據(jù)且剪貼板觀察窗口的客戶區(qū)需要重繪時,發(fā)送此消息給剪貼板所有者

WM_VSCROLLCLIPBOARD
0x030A
當(dāng)剪貼板包含CF_OWNERDIPLAY格式的數(shù)據(jù)且剪貼板觀察窗口發(fā)生垂直滾動條事件時,剪貼板觀察窗口發(fā)送此消息給剪貼板所有者

WM_SIZECLIPBOARD
0x030B
當(dāng)剪貼板包含CF_OWNERDIPLAY格式的數(shù)據(jù)且剪貼板觀察窗口的客戶區(qū)域的大小已經(jīng)改變時,剪貼板觀察窗口發(fā)送此消息給剪貼板的所有者

WM_ASKCBFORMATNAME
0x030C
剪貼板觀察窗口發(fā)送此消息給剪貼板所有者以獲得CF_OWNERDISPLAY剪貼板格式的名字

WM_CHANGECBCHAIN
0x030D
當(dāng)一個窗口從剪貼板觀察鏈中移去時發(fā)送此消息給剪貼板觀察鏈中的第一個窗口

WM_HSCROLLCLIPBOARD
0x030E
當(dāng)剪貼板包含CF_OWNERDIPLAY格式的數(shù)據(jù)且剪貼板觀察窗口發(fā)生水平滾動條事件時,剪貼板觀察窗口發(fā)送此消息給剪貼板所有者

WM_QUERYNEWPALETTE
0x030F
發(fā)送此消息給將要獲得鍵盤焦點的窗口,此消息使窗口在獲得焦點時同時有機會實現(xiàn)它的邏輯調(diào)色板

WM_PALETTEISCHANGING
0x0310
應(yīng)用程序?qū)⒁獙崿F(xiàn)它的邏輯調(diào)色板時發(fā)送此消息通知所有應(yīng)用程序

WM_PALETTECHANGED
0x0311
獲得焦點的窗口實現(xiàn)它的邏輯調(diào)色板后發(fā)送此消息給所有頂級并重疊的窗口,以此

來改變系統(tǒng)調(diào)色板

WM_HOTKEY
0x0312
當(dāng)用戶按下由RegisterHotKey()注冊的熱鍵時產(chǎn)生此消息

WM_PRINT
0x0317
應(yīng)用程序發(fā)送此消息給窗口,要求窗口在指定設(shè)備環(huán)境中繪制自己,一般情況下是打印機設(shè)備環(huán)境

WM_PRINTCLIENT
0x0318
應(yīng)用程序發(fā)送此消息給窗口,要求窗口在指定設(shè)備環(huán)境中繪制窗口客戶區(qū),一般情況下是打印機設(shè)備環(huán)境

WM_APP
0x8000
幫助用戶自定義消息,自定義消息可以為WM_APP+X,X為正整數(shù)

WM_USER
0x0400
幫助用戶自定義消息,自定義消息可以為WM_USER+X,X為正整數(shù)

 

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多