青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

隨筆 - 224  文章 - 41  trackbacks - 0
<2010年5月>
2526272829301
2345678
9101112131415
16171819202122
23242526272829
303112345

享受編程

常用鏈接

留言簿(11)

隨筆分類(lèi)(159)

隨筆檔案(224)

文章分類(lèi)(2)

文章檔案(4)

經(jīng)典c++博客

搜索

  •  

最新評(píng)論

閱讀排行榜

評(píng)論排行榜

source:http://blog.itpub.net/post/4630/412209

    首先
我們了解一下Windows的消息機(jī)制。Windows是一個(gè)消息驅(qū)動(dòng)式系統(tǒng),Windows消息提供應(yīng)用程序與應(yīng)用程序之間,應(yīng)用程序與Windows系統(tǒng)之間進(jìn)行通信的手段

舉個(gè)例子,打開(kāi)記事本程序,該程序有一個(gè)文件菜單。 那么,在運(yùn)行該程序的時(shí)候,如果用戶(hù)單擊文件菜單里的新建命令, 這個(gè)動(dòng)作將被Windows所捕捉,Windows經(jīng)過(guò)分析得知這個(gè)動(dòng)作應(yīng)該由我們打開(kāi)的記事本程序所來(lái)處理,然后Windows就發(fā)送個(gè)消息 譬如我們編程的時(shí)候有時(shí)用到的 WM_COMMAND的消息給記事本,然后記事本就把這個(gè)消息處理掉。 這個(gè)過(guò)程就是消息處理。

接下來(lái),我們把SendMessage的完整形式講一下

SendMessage

Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long

別名

SendMessageA

說(shuō)明

調(diào)用一個(gè)窗口的窗口函數(shù),將一條消息發(fā)給那個(gè)窗口。除非消息處理完畢,否則該函數(shù)不會(huì)返回

SendMessage所包含4個(gè)參數(shù)

LRESULT SendMessage(

HWND hWnd,      // handle of destination window

UINT Msg,       // message to send

WPARAM wParam,  // first message parameter

LPARAM lParam   // second message parameter

);

 

hwnd 32位的窗口句柄窗口可以是任何類(lèi)型的屏幕對(duì)象,因?yàn)?/span>Win32能夠維護(hù)大多數(shù)可視對(duì)象的句柄

wMsg 用于區(qū)別其他消息的常量值,這些常量可以是Windows單元中預(yù)定義的常量,也可以是自定義的常量

wParam 通常是一個(gè)與消息有關(guān)的常量值,也可能是窗口或控件的句柄

lParam 通常是一個(gè)指向內(nèi)存中數(shù)據(jù)的指針。

這兩個(gè)是可選的參數(shù),用來(lái)提供關(guān)于wMsg消息更多的信息,不同的wMsg可能使用這兩個(gè)參數(shù)中的012個(gè),如果不需要哪個(gè)附加參數(shù),則將實(shí)參賦為NULL(在VB中賦為0)。

比如:WM_LBUTTONDOWN消息:

The WM_LBUTTONDOWN message is posted when the user presses the left mouse button while the cursor is in the client area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. Otherwise, the message is posted to the window that has captured the mouse.

WM_LBUTTONDOWN 
fwKeys = wParam;        // key flags 
xPos = LOWORD(lParam);  // horizontal position of cursor 
yPos = HIWORD(lParam);  // vertical position of cursor 
這里SendMessage是個(gè)窗口發(fā)消息,所以xPosyPos兩個(gè)變量應(yīng)該是我們給的,也就是lParam變量,我們就要想辦法把x,y的值傳到lParam中。MAKELPARAM宏可以完成這個(gè)功能。

fwKeys

Value of wParam. Indicates whether various virtual keys are down. This parameter can be any combination of the following values:

Value

Description

MK_CONTROL

Set if the ctrl key is down.

MK_LBUTTON

Set if the left mouse button is down.

MK_MBUTTON

Set if the middle mouse button is down.

MK_RBUTTON

Set if the right mouse button is down.

MK_SHIFT

Set if the shift key is down.

SendMessage的寫(xiě)法可以如下,給m_hDestWnd的程序發(fā)送在X1,Y1處單擊鼠標(biāo)左鍵的消息。

::SendMessage(m_hDestWnd,WM_LBUTTONDOWN,MK_LBUTTON,MAKELPARAM(X1,Y1));

wMsg函數(shù)

 

wMsg函數(shù)

 

WM_CREATE 創(chuàng)建一個(gè)窗口

WM_DESTROY 當(dāng)一個(gè)窗口被破壞時(shí)發(fā)送

WM_MOVE 移動(dòng)一個(gè)窗口

WM_SIZE 改變一個(gè)窗口的大小

WM_ACTIVATE 一個(gè)窗口被激活或失去激活狀態(tài)

WM_SETFOCUS 一個(gè)窗口獲得焦點(diǎn)

WM_KILLFOCUS 一個(gè)窗口失去焦點(diǎn)

WM_ENABLE 一個(gè)窗口改變成Enable狀態(tài)

WM_SETREDRAW 設(shè)置窗口是否能重畫(huà)

WM_SETTEXT 應(yīng)用程序發(fā)送此消息來(lái)設(shè)置一個(gè)窗口的文本

WM_GETTEXT 應(yīng)用程序發(fā)送此消息來(lái)復(fù)制對(duì)應(yīng)窗口的文本到緩沖區(qū)

WM_GETTEXTLENGTH 得到與一個(gè)窗口有關(guān)的文本的長(zhǎng)度(不包含空字符)

WM_PAINT 要求一個(gè)窗口重畫(huà)自己

WM_CLOSE 當(dāng)一個(gè)窗口或應(yīng)用程序要關(guān)閉時(shí)發(fā)送一個(gè)信號(hào)

WM_QUERYENDSESSION 當(dāng)用戶(hù)選擇結(jié)束對(duì)話(huà)框或程序自己調(diào)用ExitWindows函數(shù)

WM_QUIT 用來(lái)結(jié)束程序運(yùn)行

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

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

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

WM_ENDSESSION 當(dāng)系統(tǒng)進(jìn)程發(fā)出 WM_QUERYENDSESSION消息后,此消息發(fā)送給應(yīng)用程序,通知它對(duì)話(huà)是否結(jié)束

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

WM_ACTIVATEAPP 發(fā)此消息給應(yīng)用程序哪個(gè)窗口是激活的,哪個(gè)是非激活的

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

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

WM_CANCELMODE 發(fā)送此消息來(lái)取消某種正在進(jìn)行的摸態(tài)(操作)

WM_SETCURSOR 如果鼠標(biāo)引起光標(biāo)在某個(gè)窗口中移動(dòng)且鼠標(biāo)輸入沒(méi)有被捕獲時(shí),就發(fā)消息給某個(gè)窗口

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

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

WM_QUEUESYNC 此消息由基于計(jì)算機(jī)的訓(xùn)練程序發(fā)送,通過(guò)WH_JOURNALPALYBACKhook程序分離出用戶(hù)輸入消息

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

WM_PAINTICON 發(fā)送給最小化窗口當(dāng)它圖標(biāo)將要被重畫(huà)

WM_ICONERASEBKGND 此消息發(fā)送給某個(gè)最小化窗口,僅當(dāng)它在畫(huà)圖標(biāo)前它的背景必須被重畫(huà)

WM_NEXTDLGCTL 發(fā)送此消息給一個(gè)對(duì)話(huà)框程序去更改焦點(diǎn)位置

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

WM_DRAWITEM 當(dāng)buttoncomboboxlistboxmenu的可視外觀(guān)改變時(shí)發(fā)送

WM_MEASUREITEM 當(dāng)button, combo box, list box, list view control, or menu item 被創(chuàng)建時(shí)

WM_VKEYTOITEM 此消息有一個(gè)LBS_WANTKEYBOARDINPUT風(fēng)格的發(fā)出給它的所有者來(lái)響應(yīng)WM_KEYDOWN消息

WM_CHARTOITEM 此消息由一個(gè)LBS_WANTKEYBOARDINPUT風(fēng)格的列表框發(fā)送給他的所有者來(lái)響應(yīng)WM_CHAR消息

WM_SETFONT 當(dāng)繪制文本時(shí)程序發(fā)送此消息得到控件要用的顏色

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

WM_SETHOTKEY 應(yīng)用程序發(fā)送此消息讓一個(gè)窗口與一個(gè)熱鍵相關(guān)連

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

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

WM_COMPAREITEM 發(fā)送此消息來(lái)判定comboboxlistbox新增加的項(xiàng)的相對(duì)位置

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

WM_WINDOWPOSCHANGING 發(fā)送此消息給那個(gè)窗口的大小和位置將要被改變時(shí),來(lái)調(diào)用setwindowpos函數(shù)或其它窗口管理函數(shù)

WM_WINDOWPOSCHANGED 發(fā)送此消息給那個(gè)窗口的大小和位置已經(jīng)被改變時(shí),來(lái)調(diào)用setwindowpos函數(shù)或其它窗口管理函數(shù)

WM_POWER 當(dāng)系統(tǒng)將要進(jìn)入暫停狀態(tài)時(shí)發(fā)送此
消息

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

WM_CANCELJOURNA 當(dāng)某個(gè)用戶(hù)取消程序日志激活狀態(tài),提交此消息給程序

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

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

WM_INPUTLANGCHANGE 當(dāng)平臺(tái)現(xiàn)場(chǎng)已經(jīng)被改變后發(fā)送此消息給受影響的最頂級(jí)窗口

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

WM_HELP 此消息顯示用戶(hù)按下了F1,如果某個(gè)菜單是激活的,就發(fā)送此消息個(gè)此窗口關(guān)聯(lián)的菜單,否則就發(fā)送給有焦點(diǎn)的窗口,如果當(dāng)前都沒(méi)有焦點(diǎn),就把此消息發(fā)送給當(dāng)前激活的窗口

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

WM_NOTIFYformAT 公用控件,自定義控件和他們的父窗口通過(guò)此消息來(lái)判斷控件是使用ANSI還是UNICODE結(jié)構(gòu)

WM_CONTEXTMENU 當(dāng)用戶(hù)某個(gè)窗口中點(diǎn)擊了一下右鍵就發(fā)送此消息給這個(gè)窗口WM_styleCHANGING 當(dāng)調(diào)用SETWINDOWLONG函數(shù)將要改變一個(gè)或多個(gè) 窗口的風(fēng)格時(shí)發(fā)送此消息給那個(gè)窗口

WM_styleCHANGED 當(dāng)調(diào)用SETWINDOWLONG函數(shù)一個(gè)或多個(gè) 窗口的風(fēng)格后發(fā)送此消息給那個(gè)窗口

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

WM_GETICON 此消息發(fā)送給某個(gè)窗口來(lái)返回與某個(gè)窗口有關(guān)連的大圖標(biāo)或小圖標(biāo)的句柄

WM_SETICON 程序發(fā)送此消息讓一個(gè)新的大圖標(biāo)或小圖標(biāo)與某個(gè)窗口關(guān)聯(lián)

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

WM_NCDESTROY 此消息通知某個(gè)窗口,非客戶(hù)區(qū)正在銷(xiāo)毀

WM_NCCALCSIZE 當(dāng)某個(gè)窗口的客戶(hù)區(qū)域必須被核算時(shí)發(fā)送此消息

WM_NCHITTEST 移動(dòng)鼠標(biāo),按住或釋放鼠標(biāo)時(shí)發(fā)生

WM_NCPAINT 程序發(fā)送此消息給某個(gè)窗口當(dāng)它(窗口)的框架必須被繪制時(shí)

WM_NCACTIVATE 此消息發(fā)送給某個(gè)窗口僅當(dāng)它的非客戶(hù)區(qū)需要被改變來(lái)顯示是激活還是非激活狀態(tài)

WM_GETDLGCODE 發(fā)送此消息給某個(gè)與對(duì)話(huà)框程序關(guān)聯(lián)的控件,widdows控制方位鍵和TAB鍵使輸入進(jìn)入此控件通過(guò)應(yīng)

WM_NCMOUSEMOVE 當(dāng)光標(biāo)在一個(gè)窗口的非客戶(hù)區(qū)內(nèi)移動(dòng)時(shí)發(fā)送此消息給這個(gè)窗口 非客戶(hù)區(qū)為:窗體的標(biāo)題欄及窗 的邊框體

WM_NCLBUTTONDOWN 當(dāng)光標(biāo)在一個(gè)窗口的非客戶(hù)區(qū)同時(shí)按下鼠標(biāo)左鍵時(shí)提交此消息

WM_NCLBUTTONUP 當(dāng)用戶(hù)釋放鼠標(biāo)左鍵同時(shí)光標(biāo)某個(gè)窗口在非客戶(hù)區(qū)十發(fā)送此消息

WM_NCLBUTTONDBLCLK 當(dāng)用戶(hù)雙擊鼠標(biāo)左鍵同時(shí)光標(biāo)某個(gè)窗口在非客戶(hù)區(qū)十發(fā)送此消息
WM_NCRBUTTONDOWN
當(dāng)用戶(hù)按下鼠標(biāo)右鍵同時(shí)光標(biāo)又在窗口的非客戶(hù)區(qū)時(shí)發(fā)送此消息

WM_NCRBUTTONUP 當(dāng)用戶(hù)釋放鼠標(biāo)右鍵同時(shí)光標(biāo)又在窗口的非客戶(hù)區(qū)時(shí)發(fā)送此消息

WM_NCRBUTTONDBLCLK 當(dāng)用戶(hù)雙擊鼠標(biāo)右鍵同時(shí)光標(biāo)某個(gè)窗口在非客戶(hù)區(qū)十發(fā)送此消息

WM_NCMBUTTONDOWN 當(dāng)用戶(hù)按下鼠標(biāo)中鍵同時(shí)光標(biāo)又在窗口的非客戶(hù)區(qū)時(shí)發(fā)送此消息

WM_NCMBUTTONUP 當(dāng)用戶(hù)釋放鼠標(biāo)中鍵同時(shí)光標(biāo)又在窗口的非客戶(hù)區(qū)時(shí)發(fā)送此消息

WM_NCMBUTTONDBLCLK 當(dāng)用戶(hù)雙擊鼠標(biāo)中鍵同時(shí)光標(biāo)又在窗口的非客戶(hù)區(qū)時(shí)發(fā)送此消息

WM_KEYFIRST WM_KEYDOWN 按下一個(gè)鍵

WM_KEYUP 釋放一個(gè)鍵

WM_CHAR 按下某鍵,并已發(fā)出WM_KEYDOWN WM_KEYUP消息

WM_DEADCHAR 當(dāng)用translatemessage函數(shù)翻譯

WM_KEYUP消息時(shí)發(fā)送此消息給擁有焦點(diǎn)的窗口

WM_SYSKEYDOWN 當(dāng)用戶(hù)按住ALT鍵同時(shí)按下其它鍵時(shí)提交此消息給擁有焦點(diǎn)的窗口

WM_SYSKEYUP 當(dāng)用戶(hù)釋放一個(gè)鍵同時(shí)ALT 鍵還按著時(shí)提交此消息給擁有焦點(diǎn)的窗口

WM_SYSCHAR 當(dāng)WM_SYSKEYDOWN消息被TRANSLATEMESSAGE函數(shù)翻譯后提交此消息給擁有焦點(diǎn)的窗口

WM_SYSDEADCHAR 當(dāng)WM_SYSKEYDOWN消息被TRANSLATEMESSAGE函數(shù)翻譯后發(fā)送此消息給擁有焦點(diǎn)的窗口

WM_INITDIALOG 在一個(gè)對(duì)話(huà)框程序被顯示前發(fā)送此消息給它,通常用此消息初始化控件和執(zhí)行其它任務(wù)

WM_COMMAND 當(dāng)用戶(hù)選擇一條菜單命令項(xiàng)或當(dāng)某個(gè)控件發(fā)送一條消息給它的父窗口,一個(gè)快捷鍵被翻譯

WM_SYSCOMMAND 當(dāng)用戶(hù)選擇窗口菜單的一條命令或當(dāng)用戶(hù)選擇最大化或最小化時(shí)那個(gè)窗口會(huì)收到此消息

WM_TIMER 發(fā)生了定時(shí)器事件

WM_HSCROLL 當(dāng)一個(gè)窗口標(biāo)準(zhǔn)水平滾動(dòng)條產(chǎn)生一個(gè)滾動(dòng)事件時(shí)發(fā)送此消息給那個(gè)窗口,也發(fā)送給擁有它的控件

WM_VSCROLL 當(dāng)一個(gè)窗口標(biāo)準(zhǔn)垂直滾動(dòng)條產(chǎn)生一個(gè)滾動(dòng)事件時(shí)發(fā)送此消息給那個(gè)窗口也,發(fā)送給擁有它的控件

WM_INITMENU 當(dāng)一個(gè)菜單將要被激活時(shí)發(fā)送此消息,它發(fā)生在用戶(hù)菜單條中的某項(xiàng)或按下某個(gè)菜單鍵,它允許程序在顯示前更改菜單

WM_INITMENUPOPUP 當(dāng)一個(gè)下拉菜單或子菜單將要被激活時(shí)發(fā)送此消息,它允許程序在它顯示前更改菜單,而不要改變?nèi)?/span>

WM_MENUSELECT 當(dāng)用戶(hù)選擇一條菜單項(xiàng)時(shí)發(fā)送此消息給菜單的所有者(一般是窗口)

WM_MENUCHAR 當(dāng)菜單已被激活用戶(hù)按下了某個(gè)鍵(不同于加速鍵),發(fā)送此消息給菜單的所有者

WM_ENTERIDLE 當(dāng)一個(gè)模態(tài)對(duì)話(huà)框或菜單進(jìn)入空載狀態(tài)時(shí)發(fā)送此消息給它的所有者,一個(gè)模態(tài)對(duì)話(huà)框或菜單進(jìn)入空載狀態(tài)就是在處理完一條或幾條先前的消息后沒(méi)有消息它的列隊(duì)中等待

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

WM_CTLCOLOREDIT 當(dāng)一個(gè)編輯型控件將要被繪制時(shí)發(fā)送此消息給它的父窗口 通過(guò)響應(yīng)這條消息,所有者窗口可以通過(guò)使用給定的相關(guān)顯示設(shè)備的句柄來(lái)設(shè)置編輯框的文本和背景顏色

WM_CTLCOLORLISTBOX 當(dāng)一個(gè)列表框控件將要被繪制前發(fā)送此消息給它的父窗口 通過(guò)響應(yīng)這條消息,所有者窗口可以通過(guò)使用給定的相關(guān)顯示設(shè)備的句柄來(lái)設(shè)置列表框的文本和背景顏色

WM_CTLCOLORBTN 當(dāng)一個(gè)按鈕控件將要被繪制時(shí)
發(fā)送此消息給它的父窗口 通過(guò)響應(yīng)這條消息,所有者窗口可以通過(guò)使用給定的相關(guān)顯示設(shè)備的句柄來(lái)設(shè)置按紐的文本和背景顏色

WM_CTLCOLORDLG 當(dāng)一個(gè)對(duì)話(huà)框控件將要被繪制前發(fā)送此消息給它的父窗口,通過(guò)響應(yīng)這條消息,所有者窗口可以通過(guò)使用給定的相關(guān)顯示設(shè)備的句柄來(lái)設(shè)置對(duì)話(huà)框的文本背景顏色

WM_CTLCOLORSCROLLBAR 當(dāng)一個(gè)滾動(dòng)條控件將要被繪制時(shí)發(fā)送此消息給它的父窗口 通過(guò)響應(yīng)這條消息,所有者窗口可以通過(guò)使用給定的相關(guān)顯示設(shè)備的句柄來(lái)設(shè)置滾動(dòng)條的背景顏色

WM_CTLCOLORSTATIC 當(dāng)一個(gè)靜態(tài)控件將要被繪制時(shí)發(fā)送此消息給它的父窗口 通過(guò)響應(yīng)這條消息,所有者窗口可以 通過(guò)使用給定的相關(guān)顯示設(shè)備的句柄來(lái)設(shè)置靜態(tài)控件的文本和背景顏色

WM_MOUSEFIRST WM_MOUSEMOVE 移動(dòng)鼠標(biāo)

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

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

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

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

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

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

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

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

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

WM_MOUSEWHEEL 當(dāng)鼠標(biāo)輪子轉(zhuǎn)動(dòng)時(shí)發(fā)送此消息個(gè)當(dāng)前有焦點(diǎn)的控件

WM_PARENTNOTIFY 當(dāng)MDI子窗口被創(chuàng)建或被銷(xiāo)毀,或用戶(hù)按了一下鼠標(biāo)鍵而光標(biāo)在子窗口上時(shí)發(fā)送此消息給它的父窗口

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

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

WM_SIZING 當(dāng)用戶(hù)正在調(diào)整窗口大小時(shí)發(fā)送此消息給窗口 通過(guò)此消息應(yīng)用程序可以監(jiān)視窗口大小和位置也可以修改他們

WM_CAPTURECHANGED 發(fā)送此消息 給窗口當(dāng)它失去捕獲的鼠標(biāo)時(shí)

WM_MOVING 當(dāng)用戶(hù)在移動(dòng)窗口時(shí)發(fā)送此消息,通過(guò)此消息應(yīng)用程序可以監(jiān)視窗口大小和位置也可以修改他們

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

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

WM_MDIDESTROY 應(yīng)用程序發(fā)送此消息給多文檔的客戶(hù)窗口來(lái)關(guān)閉一個(gè)MDI 子窗口

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

WM_MDIRESTORE 程序 發(fā)送此消息給MDI客戶(hù)窗口讓子窗口從最大最小化恢復(fù)到原來(lái)大小

WM_MDINEXT 程序 發(fā)送此消息給MDI客戶(hù)窗口激活下一個(gè)或前一個(gè)窗口

WM_MDIMAXIMIZE 程序發(fā)送此消息給MDI客戶(hù)窗口來(lái)最大化一個(gè)MDI子窗口

WM_MDITILE 程序 發(fā)送此消息給MDI客戶(hù)窗口以平鋪方式重新排列所有MDI子窗口

WM_MDICASCADE 程序 發(fā)送此消息給MDI客戶(hù)窗口以層疊方式重新排列所有MDI子窗口

WM_MDIICONARRANGE 程序 發(fā)送此消息給MDI客戶(hù)窗口重新排列所有最小化的MDI子窗口WM_MDIGETACTIVE 程序 發(fā)送此消息給MDI客戶(hù)窗口來(lái)找到激活的子窗口的句柄

WM_MDISETMENU 程序 發(fā)送此消息給MDI客戶(hù)窗口用MDI菜單代替子窗口的菜單

WM_CUT 程序發(fā)送此消息給一個(gè)編輯框或combobox來(lái)刪除當(dāng)前選擇的文本

WM_COPY 程序發(fā)送此消息給一個(gè)編輯框或combobox來(lái)復(fù)制當(dāng)前選擇的文本到剪貼板

WM_PASTE 程序發(fā)送此消息給editcontrolcombobox從剪貼板中得到數(shù)據(jù)

WM_CLEAR 程序發(fā)送此消息給editcontrolcombobox清除當(dāng)前選擇的內(nèi)容

WM_UNDO 程序發(fā)送此消息給editcontrolcombobox撤消最后一次操作

WM_DESTROYCLIPBOARD 當(dāng)調(diào)用ENPTYCLIPBOARD函數(shù)時(shí) 發(fā)送此消息給剪貼板的所有者

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

WM_PAINTCLIPBOARD 當(dāng)剪貼板包含CF_OWNERDIPLAY格式的數(shù)據(jù)并且剪貼板觀(guān)察窗口的客戶(hù)區(qū)需要重畫(huà)

WM_SIZECLIPBOARD 當(dāng)剪貼板包含CF_OWNERDIPLAY格式的數(shù)據(jù)并且剪貼板觀(guān)察窗口的客戶(hù)區(qū)域的大小已經(jīng)改變是

此消息通過(guò)剪貼板觀(guān)察窗口發(fā)送給剪貼板的所有者

WM_ASKCBformATNAME 通過(guò)剪貼板觀(guān)察窗口發(fā)送此消息給剪貼板的所有者來(lái)請(qǐng)求一個(gè)CF_OWNERDISPLAY格式的剪貼板的名字

WM_CHANGECBCHAIN 當(dāng)一個(gè)窗口從剪貼板觀(guān)察鏈中移去時(shí)發(fā)送此消息給剪貼板觀(guān)察鏈的第一個(gè)窗口

WM_HSCROLLCLIPBOARD 此消息通過(guò)一個(gè)剪貼板觀(guān)察窗口發(fā)送給剪貼板的所有者 它發(fā)生在當(dāng)剪貼板包含CFOWNERDISPALY格式的數(shù)據(jù)并且有個(gè)事件在剪貼板觀(guān)察窗的水平滾動(dòng)條上 所有者應(yīng)滾動(dòng)剪貼板圖象并更新滾動(dòng)條的值

WM_QUERYNEWPALETTE 此消息發(fā)送給將要收到焦點(diǎn)的窗口,此消息能使窗口在收到焦點(diǎn)時(shí)同時(shí)有機(jī)會(huì)實(shí)現(xiàn)他的邏輯調(diào)色板

WM_PALETTEISCHANGING 當(dāng)一個(gè)應(yīng)用程序正要實(shí)現(xiàn)它的邏輯調(diào)色板時(shí)發(fā)此消息通知所有的應(yīng)用程序

WM_PALETTECHANGED 此消息在一個(gè)擁有焦點(diǎn)的窗口實(shí)現(xiàn)它的邏輯調(diào)色板后發(fā)送此消息給所有頂級(jí)并重疊的窗口,以此來(lái)改變系統(tǒng)調(diào)色板

WM_HOTKEY 當(dāng)用戶(hù)按下由REGISTERHOTKEY函數(shù)注冊(cè)的熱鍵時(shí)提交此消息WM_PRINT 應(yīng)用程序發(fā)送此消息僅當(dāng)

WINDOWS或其它應(yīng)用程序發(fā)出一個(gè)請(qǐng)求要求繪制一個(gè)應(yīng)用程序的一部分

posted on 2008-11-30 11:22 漂漂 閱讀(4866) 評(píng)論(0)  編輯 收藏 引用 所屬分類(lèi): visual studio
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            狠狠色狠狠色综合人人| 欧美黄色成人网| 先锋影音国产一区| 日韩视频在线一区二区| 国产视频一区二区在线观看| 一区二区欧美视频| 亚洲精品视频啊美女在线直播| 黄色成人在线| 91久久久久| 亚洲视频网站在线观看| 洋洋av久久久久久久一区| 亚洲一区二区av电影| 亚洲天堂免费观看| 午夜精品福利一区二区三区av| 午夜精品福利在线观看| 久久午夜精品| 亚洲国产精品综合| 欧美激情第一页xxx| 亚洲国产精品福利| 日韩亚洲欧美综合| 亚洲欧洲av一区二区三区久久| 欧美在线播放高清精品| 牛夜精品久久久久久久99黑人| 欧美精品一区二区精品网| 国产精品久久午夜夜伦鲁鲁| 国产在线视频欧美| 亚洲免费高清视频| 免费成人网www| 欧美一区二区精品| 欧美性理论片在线观看片免费| 国产一区二区三区四区五区美女| 日韩午夜在线播放| 欧美国产日韩一区二区在线观看| 亚洲一区精品电影| 国产精品久久久久久av福利软件 | 久久久久国产精品一区三寸| 亚洲激情视频网| 裸体一区二区三区| 亚洲女性裸体视频| 国产精品社区| 欧美影院一区| 欧美一进一出视频| 亚洲国产精品高清久久久| 久久久91精品国产一区二区精品| 一区二区三区www| 欧美午夜免费电影| 午夜激情综合网| 亚洲综合精品一区二区| 国产欧美日韩伦理| 美女91精品| 欧美久久影院| 欧美亚洲色图校园春色| 午夜一区在线| 亚洲精品免费网站| 午夜精品一区二区三区四区| 一区二区在线观看视频| 91久久久一线二线三线品牌| 欧美日韩精品一区二区三区| 久久国产免费| 欧美日韩在线三区| 久久婷婷亚洲| 国产精品一区二区三区免费观看| 猛干欧美女孩| 国产精品一区二区黑丝| 亚洲国产精品一区二区尤物区| 国产精品美女久久久| 亚洲福利视频网站| 国内精品久久久久影院薰衣草| 亚洲免费观看高清完整版在线观看熊 | 久久精品卡一| 午夜精品久久久久久久久久久久久| 久久久国产亚洲精品| 亚洲欧美国产高清va在线播| 美女露胸一区二区三区| 久久大逼视频| 国产欧美在线看| 亚洲欧美国内爽妇网| 亚洲激情在线视频| 国产精品高潮呻吟| 一区二区三区四区五区在线| 免费观看成人鲁鲁鲁鲁鲁视频 | 欧美一区二区精品在线| 国产精品视频免费在线观看| 在线电影国产精品| 欧美一区二区精品| 亚洲午夜激情在线| 国产一区av在线| 欧美激情第3页| 国产精品家庭影院| 久久久噜噜噜久久狠狠50岁| 国产精品腿扒开做爽爽爽挤奶网站| 香蕉成人伊视频在线观看 | 欧美不卡一区| 亚洲欧美日韩爽爽影院| 国产精品免费看片| 久久久久免费| 一区二区免费在线观看| 亚洲欧美中文日韩v在线观看| 国产精品一二三四| 欧美黄色片免费观看| 亚洲淫性视频| 欧美日韩久久不卡| 亚洲免费福利视频| 久久一区欧美| 久久激情视频久久| 亚洲精品一区在线观看| 国产精品九九| 鲁大师影院一区二区三区| 日韩一级在线观看| 免费欧美日韩国产三级电影| 亚洲小说区图片区| 亚洲欧洲日产国产网站| 国产自产2019最新不卡| 国产精品久久九九| 欧美午夜精品久久久久久孕妇 | 亚洲宅男天堂在线观看无病毒| …久久精品99久久香蕉国产| 国产精品亚洲不卡a| 欧美日韩免费精品| 欧美午夜精品久久久久久孕妇| 欧美精品自拍偷拍动漫精品| 久久综合久久综合久久综合| 欧美一区二区三区在线观看| 性久久久久久久| 一区二区国产在线观看| 亚洲国产精品视频一区| 亚洲电影免费观看高清完整版在线观看 | 亚洲精品美女免费| 亚洲精品乱码久久久久| 日韩一级黄色大片| 亚洲女同在线| 裸体丰满少妇做受久久99精品| 麻豆91精品91久久久的内涵| 麻豆精品视频| 日韩视频专区| 午夜久久久久久| 久久嫩草精品久久久久| 亚洲电影免费在线观看| 亚洲一区二区三区精品视频| 久久久亚洲成人| 欧美性一二三区| 国产在线视频欧美| 亚洲一二区在线| 欧美成人精品在线| 午夜精品在线| 国产精品videosex极品| 亚洲福利视频一区| 欧美一级一区| a4yy欧美一区二区三区| 久久婷婷综合激情| 国产日韩欧美精品综合| 日韩天堂在线观看| 女女同性女同一区二区三区91| 亚洲视频久久| 欧美日韩中文字幕综合视频 | 午夜精品国产精品大乳美女| 欧美精品一区二区三区蜜臀| 亚洲国内在线| 欧美成人一区二区三区| 蜜桃精品久久久久久久免费影院| av成人免费在线| 欧美中文字幕在线视频| 黄色成人免费观看| 亚洲第一搞黄网站| 欧美国产日本| 亚洲你懂的在线视频| 欧美一区二区三区在线播放| 亚洲电影免费在线观看| 亚洲精品1区2区| 国产精品美女久久久久久免费| 欧美亚洲一区三区| 美女被久久久| 欧美亚洲自偷自偷| 久久精品成人一区二区三区蜜臀 | 欧美中文字幕在线观看| 午夜欧美精品久久久久久久| 亚洲第一精品夜夜躁人人躁| av成人免费在线观看| 在线观看日韩www视频免费| 99国产精品国产精品久久| 国产情侣久久| 99热免费精品| 日韩天堂在线观看| 老鸭窝亚洲一区二区三区| 欧美在线视频一区| 欧美日韩一二三四五区| 美女脱光内衣内裤视频久久网站| 欧美精品一卡二卡| 亚洲日韩第九十九页| 亚洲国产美国国产综合一区二区| 亚洲欧美www| 欧美在线观看www| 国产欧美日韩综合精品二区| 亚洲精品在线视频| 亚洲一区二区三区精品视频| 欧美日韩小视频| 一区二区三区久久久| 日韩天天综合| 国产精品成人aaaaa网站 | 亚洲一区二区在|