【it168 程式設計開發】訊息,就是指windows發出的乙個通知,告訴應用程式某個事情發生了。例如,單擊滑鼠、改變視窗尺寸、按下鍵盤上的乙個鍵都會使windows傳送乙個訊息給應用程式。訊息本身是作為乙個記錄傳遞給應用程式的,這個記錄中包含了訊息的型別以及其他資訊。例如,對於單擊滑鼠所產生的訊息來說,這個記錄中包含了單擊滑鼠時的座標。這個記錄型別叫做tmsg,
它在windows單元中是這樣宣告的:
type
tmsg = packed record
hwnd: hwnd; / /視窗控制代碼
message: uint; / /訊息常量識別符號
wparam: wparam ; // 32位訊息的特定附加資訊
lparam: lparam ; // 32位訊息的特定附加資訊
time: dword; / /訊息建立時的時間
pt: tpoint; / /訊息建立時的滑鼠位置
end;
訊息中有什麼?
是否覺得乙個訊息記錄中的資訊像希臘語一樣?如果是這樣,那麼看一看下面的解釋:
hwnd 32位的視窗控制代碼。視窗可以是任何型別的螢幕物件,因為win32能夠維護大多數可視物件的控制代碼(視窗、對話方塊、按鈕、編輯框等)。
message 用於區別其他訊息的常量值,這些常量可以是windows單元中預定義的常量,也可以是自定義的常量。
wparam 通常是乙個與訊息有關的常量值,也可能是視窗或控制項的控制代碼。
lparam 通常是乙個指向記憶體中資料的指標。由於w p a r a m、l p a r a m和p o i n t e r都是3 2位的,
因此,它們之間可以相互轉換。
wm_null = $0000;
wm_create = $0001;
應用程式建立乙個視窗
wm_destroy = $0002;
乙個視窗被銷毀
wm_move = $0003;
移動乙個視窗
wm_size = $0005;
改變乙個視窗的大小
wm_activate = $0006;
乙個視窗被啟用或失去啟用狀態;
wm_setfocus = $0007;
獲得焦點後
wm_killfocus = $0008;
失去焦點
wm_enable = $000a;
改變enable狀態
wm_setredraw = $000b;
設定視窗是否能重畫
wm_settext = $000c;
應用程式傳送此訊息來設定乙個視窗的文字
wm_gettext = $000d;
應用程式傳送此訊息來複製對應視窗的文字到緩衝區
wm_gettextlength = $000e;
得到與乙個視窗有關的文字的長度(不包含空字元)
wm_paint = $000f;
要求乙個視窗重畫自己
wm_close = $0010;
當乙個視窗或應用程式要關閉時傳送乙個訊號
wm_queryendsession = $0011;
當使用者選擇結束對話方塊或程式自己呼叫exitwindows函式
wm_quit = $0012;
用來結束程式執行或當程式呼叫postquitmessage函式
wm_queryopen = $0013;
當使用者視窗恢復以前的大小位置時,把此訊息傳送給某個圖示
wm_erasebkgnd = $0014;
當視窗背景必須被擦除時(例在視窗改變大小時)
wm_syscolorchange = $0015;
當系統顏色改變時,傳送此訊息給所有頂級視窗
wm_endsession = $0016;
當系統程序發出wm_queryendsession訊息後,此訊息傳送給應用程式,
通知它對話是否結束
wm_systemerror = $0017;
wm_showwindow = $0018;
Windows訊息大全
windows是一訊息 message 驅動式系統,windows訊息提供了應用程式與應用程式之間 應用程式與windows系統之間進行通訊的手段。應用程式要實現的功能由訊息來觸發,並 對訊息的響應和處理來完成。windows系統中有兩種訊息佇列,一種是系統訊息佇列,另一種是應用程式訊息佇列。計算機...
Windows訊息大全
include afxpriv.h 訊息值的定義 include dde.h dde訊息值的定義 include cpl.h 控制面板訊息值的定義 include wfext.h 檔案管理器的訊息值的定義 include ras.h ras 遠端訪問服務 的訊息值的定義 include imm.h ...
windows訊息大全
cpp view plain copy include afxpriv.h 訊息值的定義 include dde.h dde訊息值的定義 include cpl.h 控制面板訊息值的定義 include wfext.h 檔案管理器的訊息值的定義 include ras.h ras 遠端訪問服務 的訊...