控件通知消息汇总
Company number:【WTUT-WT88Y-W8BBGB-BWYTT-19998】
通知消息(Notification message)是指这样一种消息,一个窗口内的子控件发生了一些事情,需要通知父窗口。
通知消息只适用于标准的窗口控件如按钮、列表框、组合框、编辑框,以及Windows 95公共控件如树状视图、列表视图等。例如,单击或双击一个控件、 在控件中选择部分文本、操作控件的滚动条都会产生通知消息。
通知消息基于静态语言的局限性而设计出来。但实际上在AAuto语言中动态添加回调函数非常简单。
因此你可以为控件指定onnotify回调函数以接收通知消息。这在传统的编程语言中是非常繁琐复杂的操作。
/*
了解消息可以做很多有趣的事,例如我们可以不要标题栏(在窗体属性中将text属性清空),不要边框。
自已用控件来模拟windows的标题栏以及边框,可以用图片控件做出漂亮的无边框窗体。
在控件的的消息回调中拦截 _WM_LBUTTONDOWN */
import win;
拟标题栏
::PostMessage, 0xA1/*_WM_NCLBUTTONDOWN*/ , 0x2/*_HTCAPTION*/, 0)
大化最小化窗体(和上面调用方法一样,只有sendmessage方法参数不一样)
拟窗体最小化
::PostMessage, 0x112/*_WM_SYSCOMMAND*/,0xF020/*_SC_MINIMIZE*/, 0);
拟窗体最大化
::PostMessage, 0x112/*_WM_SYSCOMMAND*/, 0xF030/*_SC_MAXIMIZE*/,0);
拟窗体最大化后还原
::PostMessage, 0x112/*_WM_SYSCOMMAND*/, 0xF120/*_SC_RESTORE*/, 0); //自动判断最大化与还原 max_restore = function(){ if(::IsZoomed )
::PostMessage, 0x112/*_WM_SYSCOMMAND*/, 0xF120/*_SC_RESTORE*/, 0); else
::PostMessage, 0x112/*_WM_SYSCOMMAND*/, 0xF030/*_SC_MAXIMIZE*/,0); }
编辑框edit box+button
EN_CHANGE编辑框中的文本己更新 EN_ERRSPACE编辑框内存不足 EN_HSCROLL用户点击了水平滚动条
EN_KILLFOCUS编辑框正在失去输入焦点 EN_MAXTEXT插入的内容被截断 EN_SETFOCUS编辑框获得输入焦点 EN_UPDATE编辑框中的文本将要更新 EN_VSCROLL用户点击了垂直滚动条消息含义 编辑控件消息 Edit Control Messages
EM_GETSEL EM_SETSEL EM_GETRECT EM_SETRECT EM_SETRECTNP EM_SCROLL EM_LINESCROLL EM_SCROLLCARET EM_GETMODIFY EM_SETMODIFY EM_GETLINECOUNT EM_LINEINDEX EM_SETHANDLE EM_GETHANDLE EM_GETTHUMB EM_LINELENGTH EM_REPLACESEL EM_GETLINE EM_LIMITTEXT EM_CANUNDO EM_UNDO EM_FMTLINES EM_LINEFROMCHAR EM_SETTABSTOPS EM_SETPASSWORDCHAR EM_EMPTYUNDOBUFFER EM_GETFIRSTVISIBLELINE EM_SETREADONLY EM_SETWORDBREAKPROC EM_GETWORDBREAKPROC EM_GETPASSWORDCHAR EM_SETMARGINS EM_GETMARGINS EM_SETLIMITTEXT EM_GETLIMITTEXT EM_POSFROMCHAR EM_CHARFROMPOS EM_SETIMESTATUS
EM_GETIMESTATUS
按钮User Button Notification Codes
BN_CLICKED 用户单击了按钮 BN_PAINT 按钮应当重画 BN_HILITE 用户加亮了按钮 BN_UNHILITE 加亮应当去掉 BN_DISABLE 按钮被禁止
BN_DOUBLECLICKED 用户双击了按钮 BN_PUSHED BN_UNPUSHED BN_DBLCLK BN_SETFOCUS BN_KILLFOCUS
Button Control Messages 按钮消息
BM_GETCHECK BM_SETCHECK BM_GETSTATE BM_SETSTATE BM_SETSTYLE BM_CLICK BM_GETIMAGE BM_SETIMAGE BST_UNCHECKED BST_CHECKED BST_INDETERMINATE BST_PUSHED BST_FOCUS
静态控件消息 Static Control Message
STM_SETICON STM_GETICON STM_SETIMAGE STM_GETIMAGE STN_CLICKED STN_DBLCLK STN_ENABLE STN_DISABLE STM_MSGMAX
列表框通知消息代码 Listbox Notification Codes
LBN_ERRSPACE 列表框内存不够 LBN_SELCHANGE 选择了另一项 LBN_DBLCLK 用户双击了一项 LBN_SELCANCEL 选择被取消
LBN_SETFOCUS 列表框获得输入焦点 LBN_KILLFOCUS 列表框正在失去输入焦点
列表框消息 Listbox messages
LB_ADDSTRING LB_INSERTSTRING LB_DELETESTRING LB_SELITEMRANGEEX LB_RESETCONTENT LB_SETSEL LB_SETCURSEL LB_GETSEL LB_GETCURSEL LB_GETTEXT LB_GETTEXTLEN LB_GETCOUNT LB_SELECTSTRING LB_DIR LB_GETTOPINDEX LB_FINDSTRING LB_GETSELCOUNT LB_GETSELITEMS LB_SETTABSTOPS LB_GETHORIZONTALEXTENT LB_SETHORIZONTALEXTENT LB_SETCOLUMNWIDTH LB_ADDFILE LB_SETTOPINDEX LB_GETITEMRECT LB_GETITEMDATA LB_SETITEMDATA LB_SELITEMRANGE LB_SETANCHORINDEX LB_GETANCHORINDEX LB_SETCARETINDEX LB_GETCARETINDEX LB_SETITEMHEIGHT LB_GETITEMHEIGHT LB_FINDSTRINGEXACT LB_SETLOCALE LB_GETLOCALE LB_SETCOUNT LB_INITSTORAGE LB_ITEMFROMPOINT LB_MSGMAX LB_MSGMAX
组合框Combo Box +button
控件通知消息汇总修订版



