??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲欧洲久久av,久久狠狠高潮亚洲精品,亚洲国产av一区二区三区丶http://www.tkk7.com/yuanhuaming/category/5255.html无论是批评的Q赞扬的Q指着的都请EMAILl我Q你的徏议将是我前进的动? <A href=mailto:yuanhuaming@56.com >联系?lt;/A>zh-cnTue, 27 Feb 2007 08:46:47 GMTTue, 27 Feb 2007 08:46:47 GMT60[转]Windows消息大全使用详解http://www.tkk7.com/yuanhuaming/archive/2006/11/21/82545.html疯流成?/dc:creator>疯流成?/author>Tue, 21 Nov 2006 07:18:00 GMThttp://www.tkk7.com/yuanhuaming/archive/2006/11/21/82545.htmlhttp://www.tkk7.com/yuanhuaming/comments/82545.htmlhttp://www.tkk7.com/yuanhuaming/archive/2006/11/21/82545.html#Feedback0http://www.tkk7.com/yuanhuaming/comments/commentRss/82545.htmlhttp://www.tkk7.com/yuanhuaming/services/trackbacks/82545.htmlq东西很有用...
先放q有需要的时侯来看.....
消息Q就是指Windows发出的一个通知Q告诉应用程序某个事情发生了。例如,单击鼠标、改
变窗口尺寸、按下键盘上的一个键都会(x)使Windows发送一个消息给应用E序。消息本w是作ؓ(f)
一个记录传递给应用E序的,q个记录中包含了消息的类型以及其他信息。例如,对于单击?br />标所产生的消息来_q个记录中包含了单击鼠标时的坐标。这个记录类型叫做TMsgQ?/font>
它在Windows单元中是q样声明的:(x)
type
TMsg = packed record
hwnd: HWND; / /H口句柄
message: UINT; / /消息帔R标识W?br />wParam: WPARAM ; // 32位消息的特定附加信息
lParam: LPARAM ; // 32位消息的特定附加信息
time: DWORD; / /消息创徏时的旉
pt: TPoint; / /消息创徏时的鼠标位置
end;
消息中有什么?
是否觉得一个消息记录中的信息像希腊语一P如果是这P那么看一看下面的解释Q?br />hwnd 32位的H口句柄。窗口可以是Mcd的屏q对象,因ؓ(f)Win32能够l护大多数可视对?br />的句?H口、对话框、按钮、编辑框{??br />message 用于区别其他消息的常量|q些帔R可以是Windows单元中预定义的常量,也可?br />是自定义的常量?br />wParam 通常是一个与消息有关的常量|也可能是H口或控件的句柄?br />lParam 通常是一个指向内存中数据的指针。由于W P a r a m、l P a r a m和P o i n t e r
都是3 2位的Q?br />因此Q它们之间可以相互{换?/font>
WM_NULL = $0000;
WM_CREATE = $0001;
应用E序创徏一个窗?br />WM_DESTROY = $0002;
一个窗口被销?br />WM_MOVE = $0003;
Ud一个窗?br />WM_SIZE = $0005;
改变一个窗口的大小
WM_ACTIVATE = $0006;
一个窗口被ȀzL失去Ȁzȝ态;
WM_SETFOCUS = $0007;
获得焦点?br />WM_KILLFOCUS = $0008;
失去焦点
WM_ENABLE = $000A;
改变enable状?br />WM_SETREDRAW = $000B;
讄H口是否能重?
WM_SETTEXT = $000C;
应用E序发送此消息来设|一个窗口的文本
WM_GETTEXT = $000D;
应用E序发送此消息来复制对应窗口的文本到缓冲区
WM_GETTEXTLENGTH = $000E;
得到与一个窗口有关的文本的长度(不包含空字符Q?br />WM_PAINT = $000F;
要求一个窗口重画自?br />WM_CLOSE = $0010;
当一个窗口或应用E序要关闭时发送一个信?br />WM_QUERYENDSESSION = $0011;
当用户选择l束对话框或E序自己调用ExitWindows函数
WM_QUIT = $0012;
用来l束E序q行或当E序调用postquitmessage函数
WM_QUERYOPEN = $0013;
当用L(fng)口恢复以前的大小位置Ӟ把此消息发送给某个图标
WM_ERASEBKGND = $0014;
当窗口背景必被擦除Ӟ例在H口改变大小Ӟ
WM_SYSCOLORCHANGE = $0015;
当系l颜色改变时Q发送此消息l所有顶U窗?br />WM_ENDSESSION = $0016;
当系l进E发出WM_QUERYENDSESSION消息后,此消息发送给应用E序Q?br />通知它对话是否结?br />WM_SYSTEMERROR = $0017;
WM_SHOWWINDOW = $0018;
当隐藏或昄H口是发送此消息l这个窗?br />WM_ACTIVATEAPP = $001C;
发此消息l应用程序哪个窗口是ȀzȝQ哪个是非激zȝQ?br />WM_FONTCHANGE = $001D;
当系l的字体资源库变化时发送此消息l所有顶U窗?br />WM_TIMECHANGE = $001E;
当系l的旉变化时发送此消息l所有顶U窗?br />WM_CANCELMODE = $001F;
发送此消息来取消某U正在进行的摸态(操作Q?br />WM_SETCURSOR = $0020;
如果鼠标引v光标在某个窗口中Ud且鼠标输入没有被捕获Ӟ发消息l某个窗?br />WM_MOUSEACTIVATE = $0021;
当光标在某个非激zȝH口中而用h按着鼠标的某个键发送此消息l当前窗?br />WM_CHILDACTIVATE = $0022;
发送此消息lMDI子窗口当用户点击此窗口的标题栏,或当H口被激z,UdQ改变大?br />WM_QUEUESYNC = $0023;
此消息由Z计算机的训练E序发送,通过WH_JOURNALPALYBACK的hookE序
分离出用戯入消?br />WM_GETMINMAXINFO = $0024;
此消息发送给H口当它?yu)要改变大小或位|;
WM_PAINTICON = $0026;
发送给最化H口当它图标要被重?br />WM_ICONERASEBKGND = $0027;
此消息发送给某个最化H口Q仅当它在画图标前它的背景必被重画
WM_NEXTDLGCTL = $0028;
发送此消息l一个对话框E序L改焦点位|?br />WM_SPOOLERSTATUS = $002A;
每当打印理列队增加或减一条作业时发出此消?
WM_DRAWITEM = $002B;
当buttonQcomboboxQlistboxQmenu的可视外观改变时发?br />此消息给q些IZg的所有?br />WM_MEASUREITEM = $002C;
当button, combo box, list box, list view control, or menu item 被创建时
发送此消息l控件的所有?br />WM_DELETEITEM = $002D;
当the list box ?combo box 被销???某些被删除通过LB_DELETESTRING,
LB_RESETCONTENT, CB_DELETESTRING, or CB_RESETCONTENT 消息
WM_VKEYTOITEM = $002E;
此消息有一个LBS_WANTKEYBOARDINPUT风格的发出给它的所有者来响应WM_KEYDOWN消息
WM_CHARTOITEM = $002F;
此消息由一个LBS_WANTKEYBOARDINPUT风格的列表框发送给他的所有者来响应WM_CHAR消息
WM_SETFONT = $0030;
当绘制文本时E序发送此消息得到控g要用的颜?
WM_GETFONT = $0031;
应用E序发送此消息得到当前控gl制文本的字?br />WM_SETHOTKEY = $0032;
应用E序发送此消息让一个窗口与一个热键相兌
WM_GETHOTKEY = $0033;
应用E序发送此消息来判断热键与某个H口是否有关?br />WM_QUERYDRAGICON = $0037;
此消息发送给最化H口Q当此窗口将要被拖放而它的类中没有定义图标,应用E序能返回一
个图标或光标的句柄,当用h攑֛标时pȝ昄q个图标或光?br />WM_COMPAREITEM = $0039;
发送此消息来判定combobox或listbox新增加的的相对位置
WM_GETOBJECT = $003D;
WM_COMPACTING = $0041;
昄内存已经很少?br />WM_WINDOWPOSCHANGING = $0046;
发送此消息l那个窗口的大小和位|将要被改变Ӟ来调用setwindowpos函数或其它窗口管?br />函数
WM_WINDOWPOSCHANGED = $0047;
发送此消息l那个窗口的大小和位|已l被改变Ӟ来调用setwindowpos函数或其它窗口管?br />函数
WM_POWER = $0048;Q适用?6位的windowsQ?br />当系l将要进入暂停状态时发送此消息
WM_COPYDATA = $004A;
当一个应用程序传递数据给另一个应用程序时发送此消息
WM_CANCELJOURNAL = $004B;
当某个用户取消程序日志激zȝ态,提交此消息给E序
WM_NOTIFY = $004E;
当某个控件的某个事g已经发生或这个控仉要得C些信息时Q发送此消息l它的父H口
WM_INPUTLANGCHANGEREQUEST = $0050;
当用户选择某种输入语言Q或输入语言的热键改?br />WM_INPUTLANGCHANGE = $0051;
当^台现场已l被改变后发送此消息l受影响的最H口
WM_TCARD = $0052;
当程序已l初始化windows帮助例程时发送此消息l应用程?br />WM_HELP = $0053;
此消息显C用h下了F1Q如果某个菜单是ȀzȝQ就发送此消息个此H口兌的菜单,否则
?br />发送给有焦点的H口Q如果当前都没有焦点Q就把此消息发送给当前ȀzȝH口
WM_USERCHANGED = $0054;
当用户已l登入或退出后发送此消息l所有的H口Q当用户d或退出时pȝ更新用户的具?/font>
讄信息Q在用户更新讄时系l马上发送此消息Q?br />WM_NOTIFYFORMAT = $0055;
公用控gQ自定义控g和他们的父窗口通过此消息来判断控g是用ANSIq是UNICODEl构
在WM_NOTIFY消息Q用此控g能某个控g与它的父控g之间q行怺通信
WM_CONTEXTMENU = $007B;
当用h个窗口中点击了一下右键就发送此消息l这个窗?br />WM_STYLECHANGING = $007C;
当调用SETWINDOWLONG函数要改变一个或多个 H口的风格时发送此消息l那个窗?br />WM_STYLECHANGED = $007D;
当调用SETWINDOWLONG函数一个或多个 H口的风格后发送此消息l那个窗?br />WM_DISPLAYCHANGE = $007E;
当显C器的分辨率改变后发送此消息l所有的H口
WM_GETICON = $007F;
此消息发送给某个H口来返回与某个H口有关q的大图标或图标的句柄Q?br />WM_SETICON = $0080;
E序发送此消息让一个新的大图标或小图标与某个窗口关联;
WM_NCCREATE = $0081;
当某个窗口第一ơ被创徏Ӟ此消息在WM_CREATE消息发送前发送;
WM_NCDESTROY = $0082;
此消息通知某个H口Q非客户区正在销?br />WM_NCCALCSIZE = $0083;
当某个窗口的客户区域必须被核时发送此消息
WM_NCHITTEST = $0084;//Ud鼠标Q按住或释放鼠标时发?br />WM_NCPAINT = $0085;
E序发送此消息l某个窗口当它(H口Q的框架必须被绘制时Q?br />WM_NCACTIVATE = $0086;
此消息发送给某个H口 仅当它的非客户区需要被改变来显C是Ȁz还是非Ȁzȝ态;
WM_GETDLGCODE = $0087;
发送此消息l某个与对话框程序关联的控gQwiddows控制方位键和TAB键输入q入此控?br />通过响应WM_GETDLGCODE消息Q应用程序可以把他当成一个特D的输入控gq能处理?br />WM_NCMOUSEMOVE = $00A0;
当光标在一个窗口的非客户区内移动时发送此消息l这个窗?//非客户区为:(x)H体的标题栏
及窗
的边框体
WM_NCLBUTTONDOWN = $00A1;
当光标在一个窗口的非客户区同时按下鼠标左键时提交此消息
WM_NCLBUTTONUP = $00A2;
当用户释N标左键同时光标某个窗口在非客户区十发送此消息Q?br />WM_NCLBUTTONDBLCLK = $00A3;
当用户双击鼠标左键同时光标某个窗口在非客户区十发送此消息
WM_NCRBUTTONDOWN = $00A4;
当用h下鼠标右键同时光标又在窗口的非客户区时发送此消息
WM_NCRBUTTONUP = $00A5;
当用户释N标右键同时光标又在窗口的非客户区时发送此消息
WM_NCRBUTTONDBLCLK = $00A6;
当用户双击鼠标右键同时光标某个窗口在非客户区十发送此消息
WM_NCMBUTTONDOWN = $00A7;
当用h下鼠标中键同时光标又在窗口的非客户区时发送此消息
WM_NCMBUTTONUP = $00A8;
当用户释N标中键同时光标又在窗口的非客户区时发送此消息
WM_NCMBUTTONDBLCLK = $00A9;
当用户双击鼠标中键同时光标又在窗口的非客户区时发送此消息
WM_KEYFIRST = $0100;
WM_KEYDOWN = $0100;
//按下一个键
WM_KEYUP = $0101;
//释放一个键
WM_CHAR = $0102;
//按下某键Qƈ已发出WM_KEYDOWNQ?WM_KEYUP消息
WM_DEADCHAR = $0103;
当用translatemessage函数译WM_KEYUP消息时发送此消息l拥有焦点的H口
WM_SYSKEYDOWN = $0104;
当用h住ALT键同时按下其它键时提交此消息l拥有焦点的H口Q?br />WM_SYSKEYUP = $0105;
当用户释放一个键同时ALT 键还按着时提交此消息l拥有焦点的H口
WM_SYSCHAR = $0106;
当WM_SYSKEYDOWN消息被TRANSLATEMESSAGE函数译后提交此消息l拥有焦点的H口
WM_SYSDEADCHAR = $0107;
当WM_SYSKEYDOWN消息被TRANSLATEMESSAGE函数译后发送此消息l拥有焦点的H口
WM_KEYLAST = $0108;
WM_INITDIALOG = $0110;
在一个对话框E序被显C前发送此消息l它Q通常用此消息初始化控件和执行其它d
WM_COMMAND = $0111;
当用户选择一条菜单命令项或当某个控g发送一条消息给它的父窗口,一个快捷键被翻?br />WM_SYSCOMMAND = $0112;
当用户选择H口菜单的一条命令或当用户选择最大化或最化旉个窗口会(x)收到此消?br />WM_TIMER = $0113; //发生了定时器事g
WM_HSCROLL = $0114;
当一个窗口标准水qx动条产生一个滚动事件时发送此消息l那个窗口,也发送给拥有它的?br />?br />WM_VSCROLL = $0115;
当一个窗口标准垂直滚动条产生一个滚动事件时发送此消息l那个窗口也Q发送给拥有它的?br />?WM_INITMENU = $0116;
当一个菜单将要被ȀzL发送此消息Q它发生在用戯单条中的某项或按下某个菜单键Q它?br />许程序在昄前更改菜?br />WM_INITMENUPOPUP = $0117;
当一个下拉菜单或子菜单将要被ȀzL发送此消息Q它允许E序在它昄前更改菜单,而不?br />改变全部
WM_MENUSELECT = $011F;
当用户选择一条菜单项时发送此消息l菜单的所有者(一般是H口Q?br />WM_MENUCHAR = $0120;
当菜单已被激zȝh下了某个键(不同于加速键Q,发送此消息l菜单的所有者;
WM_ENTERIDLE = $0121;
当一个模态对话框或菜单进入空载状态时发送此消息l它的所有者,一个模态对话框或菜单进
入空载状态就是在处理完一条或几条先前的消息后没有消息它的列队中等?br />WM_MENURBUTTONUP = $0122;
WM_MENUDRAG = $0123;
WM_MENUGETOBJECT = $0124;
WM_UNINITMENUPOPUP = $0125;
WM_MENUCOMMAND = $0126;
WM_CHANGEUISTATE = $0127;
WM_UPDATEUISTATE = $0128;
WM_QUERYUISTATE = $0129;
WM_CTLCOLORMSGBOX = $0132;
在windowsl制消息框前发送此消息l消息框的所有者窗口,通过响应q条消息Q所有者窗?br />可以通过使用l定的相xC备的句柄来设|消息框的文本和背景颜色
WM_CTLCOLOREDIT = $0133;
当一个编辑型控g要被绘制时发送此消息l它的父H口Q通过响应q条消息Q所有者窗口可
以通过使用l定的相xC备的句柄来设|编辑框的文本和背景颜色
WM_CTLCOLORLISTBOX = $0134;
当一个列表框控g要被绘制前发送此消息l它的父H口Q通过响应q条消息Q所有者窗口可
以通过使用l定的相xC备的句柄来设|列表框的文本和背景颜色
WM_CTLCOLORBTN = $0135;
当一个按钮控件将要被l制时发送此消息l它的父H口Q通过响应q条消息Q所有者窗口可?br />通过使用l定的相xC备的句柄来设|按U的文本和背景颜?br />WM_CTLCOLORDLG = $0136;
当一个对话框控g要被绘制前发送此消息l它的父H口Q通过响应q条消息Q所有者窗口可
以通过使用l定的相xC备的句柄来设|对话框的文本背景颜?br />WM_CTLCOLORSCROLLBAR= $0137;
当一个滚动条控g要被绘制时发送此消息l它的父H口Q通过响应q条消息Q所有者窗口可
以通过使用l定的相xC备的句柄来设|滚动条的背景颜?br />WM_CTLCOLORSTATIC = $0138;
当一个静态控件将要被l制时发送此消息l它的父H口Q通过响应q条消息Q所有者窗口可?br />通过使用l定的相xC备的句柄来设|静态控件的文本和背景颜?br />WM_MOUSEFIRST = $0200;
WM_MOUSEMOVE = $0200;
// Ud鼠标
WM_LBUTTONDOWN = $0201;
//按下鼠标左键
WM_LBUTTONUP = $0202;
//释放鼠标左键
WM_LBUTTONDBLCLK = $0203;
//双击鼠标左键
WM_RBUTTONDOWN = $0204;
//按下鼠标右键
WM_RBUTTONUP = $0205;
//释放鼠标右键
WM_RBUTTONDBLCLK = $0206;
//双击鼠标右键
WM_MBUTTONDOWN = $0207;
//按下鼠标中键
WM_MBUTTONUP = $0208;
//释放鼠标中键
WM_MBUTTONDBLCLK = $0209;
//双击鼠标中键
WM_MOUSEWHEEL = $020A;
当鼠标轮子{动时发送此消息个当前有焦点的控?br />WM_MOUSELAST = $020A;
WM_PARENTNOTIFY = $0210;
当MDI子窗口被创徏或被销毁,或用h了一下鼠标键而光标在子窗口上时发送此消息l它?br />父窗?br />WM_ENTERMENULOOP = $0211;
发送此消息通知应用E序的主H口that已经q入了菜单@环模?br />WM_EXITMENULOOP = $0212;
发送此消息通知应用E序的主H口that已退Z菜单循环模式
WM_NEXTMENU = $0213;
WM_SIZING = 532;
当用h在调整窗口大时发送此消息l窗口;通过此消息应用程序可以监视窗口大和位置
也可以修改他?br />WM_CAPTURECHANGED = 533;
发送此消息 l窗口当它失LL(fng)鼠标Ӟ
WM_MOVING = 534;
当用户在UdH口时发送此消息Q通过此消息应用程序可以监视窗口大和位置也可以修改他
们;
WM_POWERBROADCAST = 536;
此消息发送给应用E序来通知它有关电(sh)源管理事Ӟ
WM_DEVICECHANGE = 537;
当设备的g配置改变时发送此消息l应用程序或讑֤驱动E序
WM_IME_STARTCOMPOSITION = $010D;
WM_IME_ENDCOMPOSITION = $010E;
WM_IME_COMPOSITION = $010F;
WM_IME_KEYLAST = $010F;
WM_IME_SETCONTEXT = $0281;
WM_IME_NOTIFY = $0282;
WM_IME_CONTROL = $0283;
WM_IME_COMPOSITIONFULL = $0284;
WM_IME_SELECT = $0285;
WM_IME_CHAR = $0286;
WM_IME_REQUEST = $0288;
WM_IME_KEYDOWN = $0290;
WM_IME_KEYUP = $0291;
WM_MDICREATE = $0220;
应用E序发送此消息l多文档的客L(fng)口来创徏一个MDI 子窗?br />WM_MDIDESTROY = $0221;
应用E序发送此消息l多文档的客L(fng)口来关闭一个MDI 子窗?br />WM_MDIACTIVATE = $0222;
应用E序发送此消息l多文档的客L(fng)口通知客户H口Ȁzd一个MDI子窗口,当客L(fng)口收
到此消息后,它发出WM_MDIACTIVE消息lMDI子窗口(未激z)ȀzdQ?br />WM_MDIRESTORE = $0223;
E序 发送此消息lMDI客户H口让子H口从最大最化恢复到原来大?br />WM_MDINEXT = $0224;
E序 发送此消息lMDI客户H口ȀzM一个或前一个窗?br />WM_MDIMAXIMIZE = $0225;
E序发送此消息lMDI客户H口来最大化一个MDI子窗口;
WM_MDITILE = $0226;
E序 发送此消息lMDI客户H口以^铺方式重新排列所有MDI子窗?br />WM_MDICASCADE = $0227;
E序 发送此消息lMDI客户H口以层叠方式重新排列所有MDI子窗?br />WM_MDIICONARRANGE = $0228;
E序 发送此消息lMDI客户H口重新排列所有最化的MDI子窗?br />WM_MDIGETACTIVE = $0229;
E序 发送此消息lMDI客户H口来找到激zȝ子窗口的句柄
WM_MDISETMENU = $0230;
E序 发送此消息lMDI客户H口用MDI菜单代替子窗口的菜单
WM_ENTERSIZEMOVE = $0231;
WM_EXITSIZEMOVE = $0232;
WM_DROPFILES = $0233;
WM_MDIREFRESHMENU = $0234;
WM_MOUSEHOVER = $02A1;
WM_MOUSELEAVE = $02A3;
WM_CUT = $0300;
E序发送此消息l一个编辑框或combobox来删除当前选择的文?br />WM_COPY = $0301;
E序发送此消息l一个编辑框或combobox来复制当前选择的文本到剪脓(chung)?br />WM_PASTE = $0302;
E序发送此消息leditcontrol或combobox从剪贴板中得到数?br />WM_CLEAR = $0303;
E序发送此消息leditcontrol或combobox清除当前选择的内容;
WM_UNDO = $0304;
E序发送此消息leditcontrol或combobox撤消最后一ơ操?br />WM_RENDERFORMAT = $0305Q?/font>
WM_RENDERALLFORMATS = $0306;
WM_DESTROYCLIPBOARD = $0307;
当调用ENPTYCLIPBOARD函数?发送此消息l剪贴板的所有?br />WM_DRAWCLIPBOARD = $0308;
当剪贴板的内容变化时发送此消息l剪贴板观察铄W一个窗口;它允许用剪脓(chung)板观察窗口来
昄剪脓(chung)板的新内容;
WM_PAINTCLIPBOARD = $0309;
当剪贴板包含CF_OWNERDIPLAY格式的数据ƈ且剪贴板观察H口的客户区需要重画;
WM_VSCROLLCLIPBOARD = $030A;
WM_SIZECLIPBOARD = $030B;
当剪贴板包含CF_OWNERDIPLAY格式的数据ƈ且剪贴板观察H口的客户区域的大小已经改变是此
消息通过剪脓(chung)板观察窗口发送给剪脓(chung)板的所有者;
WM_ASKCBFORMATNAME = $030C;
通过剪脓(chung)板观察窗口发送此消息l剪贴板的所有者来h一个CF_OWNERDISPLAY格式的剪贴板
的名?br />WM_CHANGECBCHAIN = $030D;
当一个窗口从剪脓(chung)板观察链中移L发送此消息l剪贴板观察铄W一个窗口;
WM_HSCROLLCLIPBOARD = $030E;
此消息通过一个剪贴板观察H口发送给剪脓(chung)板的所有?br />Q它发生在当剪脓(chung)板包含CFOWNERDISPALY格式的数据ƈ且有个事件在剪脓(chung)板观察窗的水qx?br />条上Q所有者应滚动剪脓(chung)板图象ƈ更新滚动条的|
WM_QUERYNEWPALETTE = $030F;
此消息发送给要收到焦点的窗口,此消息能使窗口在收到焦点时同时有Z(x)实现他的逻辑?br />色板
WM_PALETTEISCHANGING= $0310;
当一个应用程序正要实现它的逻辑调色板时发此消息通知所有的应用E序
WM_PALETTECHANGED = $0311;
此消息在一个拥有焦点的H口实现它的逻辑调色板后发送此消息l所有顶Uƈ重叠的窗口,?br />此来改变pȝ调色?
WM_HOTKEY = $0312;
当用h下由REGISTERHOTKEY函数注册的热键时提交此消?br />WM_PRINT = 791;
应用E序发送此消息仅当WINDOWS或其它应用程序发Z个请求要求绘制一个应用程序的一?br />分;
WM_PRINTCLIENT = 792;
WM_HANDHELDFIRST = 856;
WM_HANDHELDLAST = 863;
WM_PENWINFIRST = $0380;
WM_PENWINLAST = $038F;
WM_COALESCE_FIRST = $0390;
WM_COALESCE_LAST = $039F;
WM_DDE_FIRST = $03E0;
WM_DDE_INITIATE = WM_DDE_FIRST + 0;
一个DDE客户E序提交此消息开始一个与服务器程序的?x)话来响应那个指定的E序和主题名Q?br />WM_DDE_TERMINATE = WM_DDE_FIRST + 1;
一个DDE应用E序Q无论是客户q是服务器)提交此消息来l止一个会(x)话;
WM_DDE_ADVISE = WM_DDE_FIRST + 2;
一个DDE客户E序提交此消息给一个DDE服务E序来请求服务器每当数据Ҏ(gu)变时更新?br />WM_DDE_UNADVISE = WM_DDE_FIRST + 3;
一个DDE客户E序通过此消息通知一个DDE服务E序不更新指定的Ҏ(gu)一个特D的剪脓(chung)板格式的
?br />WM_DDE_ACK = WM_DDE_FIRST + 4;
此消息通知一个DDEQ动态数据交换)E序已收到ƈ正在处理WM_DDE_POKE, WM_DDE_EXECUTE,
WM_DDE_DATA, WM_DDE_ADVISE, WM_DDE_UNADVISE, or WM_DDE_INITIAT消息
WM_DDE_DATA = WM_DDE_FIRST + 5;
一个DDE服务E序提交此消息给DDE客户E序来传递个一数据给客户或通知客户的一条可用数
据项
WM_DDE_REQUEST = WM_DDE_FIRST + 6;
一个DDE客户E序提交此消息给一个DDE服务E序来请求一个数据项的|
WM_DDE_POKE = WM_DDE_FIRST + 7;
一个DDE客户E序提交此消息给一个DDE服务E序Q客户用此消息来请求服务器接收一个未l?br />同意的数据项Q服务器通过{复WM_DDE_ACK消息提示是否它接收这个数据项Q?br />WM_DDE_EXECUTE = WM_DDE_FIRST + 8;
一个DDE客户E序提交此消息给一个DDE服务E序来发送一个字W串l服务器让它象串行命令一
栯处理Q服务器通过提交WM_DDE_ACK消息来作回应Q?br />WM_DDE_LAST = WM_DDE_FIRST + 8;
WM_APP = $8000;
WM_USER = $0400;
此消息能帮助应用E序自定义私有消息;
/////////////////////////////////////////////////////////////////////
通知消息(Notification message)是指q样一U消息,一个窗口内的子控g发生了一些事情,
需要通知父窗口。通知消息只适用于标准的H口控g如按钮、列表框、组合框、编辑框Q以?br />Windows 95公共控g如树(wi)状视图、列表视囄。例如,单击或双M个控件、在控g中选择?br />分文本、操作控件的滚动条都?x)生通知消息?
按扭
B N _ C L I C K E D //用户单击了按?br />B N _ D I S A B L E //按钮被禁?br />B N _ D O U B L E C L I C K E D //用户双击了按?br />B N _ H I L I T E //用户加亮了按?br />B N _ PA I N T按钮应当重画
B N _ U N H I L I T E加亮应当L
l合?br />C B N _ C L O S E U Pl合框的列表框被关闭
C B N _ D B L C L K用户双击了一个字W串
C B N _ D R O P D O W Nl合框的列表框被拉出
C B N _ E D I T C H A N G E用户修改了编辑框中的文本
C B N _ E D I T U P D AT E~辑框内的文本即更?br />C B N _ E R R S PA C El合框内存不?br />C B N _ K I L L F O C U Sl合框失去输入焦?br />C B N _ S E L C H A N G E在组合框中选择了一?br />C B N _ S E L E N D C A N C E L用户的选择应当被取?br />C B N _ S E L E N D O K用户的选择是合法的
C B N _ S E T F O C U Sl合框获得输入焦?br />~辑?br />E N _ C H A N G E~辑框中的文本己更新
E N _ E R R S PA C E~辑框内存不?br />E N _ H S C R O L L用户点击了水qx动条
E N _ K I L L F O C U S~辑框正在失去输入焦?br />E N _ M A X T E X T插入的内容被截断
E N _ S E T F O C U S~辑框获得输入焦?br />E N _ U P D AT E~辑框中的文本将要更?br />E N _ V S C R O L L用户点击了垂直滚动条消息含义
列表?br />L B N _ D B L C L K用户双击了一?br />L B N _ E R R S PA C E列表框内存不?br />L B N _ K I L L F O C U S列表框正在失去输入焦?br />L B N _ S E L C A N C E L选择被取?br />L B N _ S E L C H A N G E选择了另一?br />L B N _ S E T F O C U S列表框获得输入焦?br />


]]>
如何通过VB处理XMLhttp://www.tkk7.com/yuanhuaming/archive/2006/01/19/28655.html疯流成?/dc:creator>疯流成?/author>Thu, 19 Jan 2006 06:52:00 GMThttp://www.tkk7.com/yuanhuaming/archive/2006/01/19/28655.htmlhttp://www.tkk7.com/yuanhuaming/comments/28655.htmlhttp://www.tkk7.com/yuanhuaming/archive/2006/01/19/28655.html#Feedback0http://www.tkk7.com/yuanhuaming/comments/commentRss/28655.htmlhttp://www.tkk7.com/yuanhuaming/services/trackbacks/28655.html
  • 首先要引用一个Microsoft XML 随便选个版本?
  • 在初始化的时候读取XML昄到TXTBOX中,代码如下Q?
    '通过2q制将XML文gd来,也可以是其它文g格式
    Private
     Function pstrUpdateView(istrXMLPath As StringAs String
        
    Dim wlngFreeFile As Long
        
    Dim wbytwbytLoadBytes() As Byte
        '获得一个空闲文件号
        wlngFreeFile 
    = FreeFile
        Open istrXMLPath 
    For Binary As #wlngFreeFile
        
    ReDim wbytLoadBytes(1 To LOF(wlngFreeFile)) As Byte
        
    Get #wlngFreeFile, , wbytLoadBytes
        Close wlngFreeFile
        
        pstrUpdateView 
    = StrConv(wbytLoadBytes, vbUnicode)
    End Function
  • 装蝲XML。传q去一个XML地址Q如果装载不成功errorQ成功则执行下一?
    Private Sub fsubLoadXML(istrXMLPath As String)
        
    Set pobjXMLDoc = CreateObject("MSXML2.DOMDocument")
        
    If pobjXMLDoc.Load(istrXMLPath) = False Then
            
    On Error GoTo LoadXMLErr:
        
    End If
        
        
    On Error GoTo 0
        
    Exit Sub
    LoadXMLErr:
        
    Dim myErr
        
    Set myErr = pobjXMLDoc.parseError
        
    MsgBox ("ERRORQ?/SPAN>" & myErr.reason)
        
    Set myErr = Nothing
    End Sub
  • d性。DOMDocument对象里有2个读节点的方法:(x)
    1. selectNodes() 如果根节点下有多个子节点p用这个方法,item定义了第几个子节?/DIV>
    2. selectSingleNode()如果根节点下只有一个字节点可以用这个方?/DIV>

    1. Private Function fstrReadAttr(istrNodes As String, istrAttribute As StringAs String
      On Error GoTo ErrHandle:
          
      Dim wobjXmlAttr As MSXML2.IXMLDOMAttribute
          
      '
      '
          Set wobjXmlAttr = pobjXMLDoc.selectNodes(istrNodes).Item(0).Attributes.getNamedItem(istrAttribute)
          '
          Set wobjXmlAttr = pobjXMLDoc.selectSingleNode(istrNodes).Attributes.getNamedItem(istrAttribute)
          fstrReadAttr 
      = wobjXmlAttr.Text
          
          
      'destroy object
          Set wobjXmlAttr = Nothing
          
      On Error GoTo 0
          
      Exit Function
      ErrHandle:
          
      MsgBox Err.Description
          
      Set wobjXmlAttr = Nothing
      End Function
  • 读节炏V?call fstrReadNode("/test/user") ,参数是test节点下的user子节?
    Private Function fstrReadNode(istrNodes As StringAs String
        
    Dim xNode As MSXML2.IXMLDOMNode
        
    Set xNode = pobjXMLDoc.selectSingleNode(istrNodes)
        fstrReadNode 
    = xNode.Text
        
    Set xNode = Nothing
    End Function
  • 写节炏V参?Q节点;参数2Q需要写入的?

    Private Sub fsubWriteNode(istrNodes As String, istrValue As String)
        
    Dim wobjXMLNode As IXMLDOMElement
        
        
    Set wobjXMLNode = pobjXMLDoc.documentElement.selectNodes(istrNodes).Item(0)

        wobjXMLNode.Text 
    = istrValue

         Set wobjXMLNode = Nothing
    End Sub


  • a sample :download


    转自Q?A id=ArticleContent1_ArticleContent1_AuthorBlogLink target=_blank>http://blog.csdn.net/kinytx/

    MSXML 处理 xml 文档时外部DTD定义的问题(ASPQ?BR>目中碰到这个问题,所以也贴了出来

    xmlfile = "http://myserver/catalog.xml"
    xslfile 
    = "catalog.xsl"

    ' 创徏相关对象
    Set xslDoc = server.CreateObject("MSXML2.FreeThreadedDOMDocument")
    Set xmlDoc = server.CreateObject("MSXML2.DOMDocument")

    ' dxsl文g
    xsldoc.async = False
    xsldoc.resolveExternals 
    = True
    xsldoc.load server.MapPath(xslfile)
    ' dxml文g
    xmldoc.setProperty "ServerHTTPRequest",True  ' 讄ServerHTTPRequest 属性ؓ(f) True Z通过http协议载入xml文档
    xmldoc.async = False ' 讄 async属性ؓ(f) False 关闭异步调用
    xmldoc.resolveExternals = True ' 讄 resolveExternals ?nbsp;True 打开外部DTD分析
    xmldoc.validateOnParse = False ' 讄 validateOnParse ?nbsp;False 允许文档验证
    xmldoc.load xmlfile ' dxml文档
    Do While (xmldoc.ReadyState < 4)  ' 查ReadyState状态值是否ؓ(f)4 ' 具体数值定义参见msxml sdk document
       xmldoc.waitForResponse 10 ' 通过waitForResponseҎ(gu){待文档完全d完毕 ' 如果取完成,pȝ暂停10毫秒
    Loop

    ' 转换xml -> html q输出文?/SPAN>
    xmldoc.transformNodeToObject xsldoc,Response

    ' 清空对象
    Set xslt = Nothing
    Set xsldoc = Nothing
    Set xmldoc = Nothing


    ]]>
    标题:提高EXCEL中VBA的效?/title><link>http://www.tkk7.com/yuanhuaming/archive/2005/11/25/21401.html</link><dc:creator>疯流成?/dc:creator><author>疯流成?/author><pubDate>Fri, 25 Nov 2005 03:02:00 GMT</pubDate><guid>http://www.tkk7.com/yuanhuaming/archive/2005/11/25/21401.html</guid><wfw:comment>http://www.tkk7.com/yuanhuaming/comments/21401.html</wfw:comment><comments>http://www.tkk7.com/yuanhuaming/archive/2005/11/25/21401.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/yuanhuaming/comments/commentRss/21401.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/yuanhuaming/services/trackbacks/21401.html</trackback:ping><description><![CDATA[来源Q 杨红?<BR><BR><BR>提高EXCEL中VBA的效?<BR><FONT color=#118811>  </FONT> <BR><FONT color=#118811><EM> </EM></FONT><BR><BR>׃Microsoft Office办公套g的广泛应用,以及该Y件版本的不断提升Q功能不断完善,在Office办公套gq_上开发出的的VBA应用E序来多Q而VBA是一U宏语言Q在q行速度上有很大的限制。因此VBA~程的方法直接关pdVBAE序q行的效率,本文列D了一些提高VBAE序q行效率的方法? <P>Ҏ(gu)1Q尽量用VBA原有的属性、方法和W(xu)orksheet函数 <P>׃Excel对象多达癑֤个,对象的属性、方法、事件多不胜敎ͼ对于初学者来说可能对它们不全部了解,q就产生了编E者经常编写与Excel对象的属性、方法相同功能的VBA代码D,而这些代码段的运行效率显然与Excel对象的属性、方法完成Q务的速度相差甚大。例如用Range的属性CurrentRegion来返?Range 对象Q该对象代表当前区。(当前区指以Q意空白行及空白列的组合ؓ(f)边界的区域)。同样功能的VBA代码需数十行。因此编E前应尽可能多地了解Excel对象的属性、方法? <P>充分利用Worksheet函数是提高程序运行速度的极度有效的Ҏ(gu)。如求^均工资的例子QFor Each c In Worksheet(1).Range(″A1:A1000? <P>TotalValue = TotalValue Q?c.Value <P>Next <P>AverageValue = TotalValue / Worksheet(1).Range(″A1:A1000?.Rows.Count <P>而下面代码程序比上面例子快得多:(x) <P>AverageValue=Application.WorksheetFunction.Average(Worksheets(1).Range(″A1:A1000?) <P>其它函数如Count,Counta,Countif,Match,Lookup{等Q都能代替相同功能的VBAE序代码Q提高程序的q行速度? <P>Ҏ(gu)2Q尽量减用对象引用,其在@环中 <P>每一个Excel对象的属性、方法的调用都需要通过OLE接口的一个或多个调用Q这些OLE调用都是需要时间的Q减用对象引用能加快VBA代码的运行。例? <P>1Q用With语句? <P>Workbooks(1).Sheets(1).Range(″A1:A1000?.Font.Name=″Pay? <P>Workbooks(1).Sheets(1).Range(″A1:A1000?.Font.FontStyle=″Bold?... <P>则以下语句比上面的快 <P>With Workbooks(1).Sheets(1).Range(″A1:A1000?.Font <P>.Name = ″Pay? <P>.FontStyle = ″Bold? <P>... <P>End With <P>2Q用对象变量? <P>如果你发C个对象引用被多次使用Q则你可以将此对象用Set 讄为对象变量,以减对对象的访问。如Q? <P>Workbooks(1).Sheets(1).Range(″A1?.Value = 100 <P>Workbooks(1).Sheets(1).Range(″A2?.Value = 200 <P>则以下代码比上面的要快:(x) <P>Set MySheet = Workbooks(1).Sheets(1) <P>MySheet.Range(″A1?.Value = 100 <P>MySheet.Range(″A2?.Value = 200 <P>3Q在循环中要量减少对象的访问? <P>For k = 1 To 1000 <P>Sheets(″Sheet1?.Select <P>Cells(k,1).Value = Cells(1,1).Value <P>Next k <P>则以下代码比上面的要快:(x) <P>Set TheValue = Cells(1,1).Value <P>Sheets(″Sheet1?.Select <P>For k = 1 To 1000 <P>Cells(k,1).Value = TheValue <P>Next k <P>Ҏ(gu)3Q减对象的Ȁzd选择 <P>如果你的通过录制宏来学习(fn)VBA的,则你的VBAE序里一定充满了对象的激zd选择Q例如Workbooks(XXX).Activate、Sheets(XXX).Select、Range(XXX).Select{?但事实上大多数情况下q些操作不是必需的。例? <P>Sheets(″Sheet3?.Select <P>Range(″A1?.Value = 100 <P>Range(″A2?.Value = 200 <P>可改为:(x) <P>With Sheets(″Sheet3? <P>.Range(″A1?.Value = 100 <P>.Range(″A2?.Value = 200 <P>End With <P>Ҏ(gu)4Q关闭屏q更? <P>如果你的VBAE序前面三条做得比较差,则关闭屏q更新是提高VBAE序q行速度的最有效的方法,~短q行旉2/3左右。关闭屏q更新的Ҏ(gu)Q? <P>Application.ScreenUpdate = False <P>请不要忘记VBAE序q行l束时再该D回来Q? <P>Application.ScreenUpdate = True <P>以上是提高VBAq行效率的比较有效的几种Ҏ(gu)?</P><img src ="http://www.tkk7.com/yuanhuaming/aggbug/21401.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/yuanhuaming/" target="_blank">疯流成?/a> 2005-11-25 11:02 <a href="http://www.tkk7.com/yuanhuaming/archive/2005/11/25/21401.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <p>лǵվܻԴȤ</p> <a href="http://www.tkk7.com/" title="亚洲av成人片在线观看">亚洲av成人片在线观看</a> <div class="friend-links"> </div> </div> </footer> վ֩ģ壺 <a href="http://clzqb2b.com" target="_blank">ۺav뾫Ʒһ</a>| <a href="http://9akk.com" target="_blank">ˬˬƵѿԿ</a>| <a href="http://23usxx.com" target="_blank">Ļһҳ</a>| <a href="http://see13.com" target="_blank">ëƬ쿴</a>| <a href="http://xass1.com" target="_blank">ղƷϵ</a>| <a href="http://ninggelang.com" target="_blank">ҳվƵ</a>| <a href="http://ydxcsh.com" target="_blank">av˾Ʒ߲</a>| <a href="http://001mc.com" target="_blank">޹AV</a>| <a href="http://zndijgch.com" target="_blank">Ʒ</a>| <a href="http://34jjjj.com" target="_blank">ۺ͵Ļ</a>| <a href="http://xiaoduanfa.com" target="_blank">ֳִӲƵ</a>| <a href="http://gayhh.com" target="_blank">޾ƷպAV</a>| <a href="http://jioupin.com" target="_blank">þþƷAV</a>| <a href="http://kingrel.com" target="_blank">йɫվ</a>| <a href="http://fdhkauto.com" target="_blank">avҹƬƷվ</a>| <a href="http://wangdei.com" target="_blank">99reȾƷƵ</a>| <a href="http://9527paotui.com" target="_blank">6666˹ۿ</a>| <a href="http://gxnnzk.com" target="_blank">ݹѾþþ91</a>| <a href="http://jomujy.com" target="_blank">߹ۿ԰Ƶ</a>| <a href="http://591se591se.com" target="_blank">ŷ͵ҹɫ</a>| <a href="http://yw323.com" target="_blank">91ѹۿ</a>| <a href="http://louqibang.com" target="_blank">˳վ߲</a>| <a href="http://zjjtejia.com" target="_blank">ڵɫƵƵ</a>| <a href="http://xyflash.com" target="_blank">EEUSSӰԺWWW߹ۿ</a>| <a href="http://aplus178.com" target="_blank">AVһ</a>| <a href="http://pohezi.com" target="_blank">Ʒþһ</a>| <a href="http://qiseka.com" target="_blank">ëƬ쿴</a>| <a href="http://bjjs365.com" target="_blank">þþþŷղAV </a>| <a href="http://www-60060.com" target="_blank">ŷޡŹһ</a>| <a href="http://vvbbn.com" target="_blank">aëƬ߻վ</a>| <a href="http://mtsp2.com" target="_blank">911Ʒձ </a>| <a href="http://langtuojidian.com" target="_blank">ĻӰƵۿ</a>| <a href="http://www876444.com" target="_blank">һëƬѲһ</a>| <a href="http://3x79.com" target="_blank">㽶aavۺ</a>| <a href="http://16688shop.com" target="_blank">wwwѸƵ</a>| <a href="http://doubaye.com" target="_blank">ƵƷһ</a>| <a href="http://biarn.com" target="_blank">vavava888www</a>| <a href="http://tom-erc20.com" target="_blank">ŷ޾Ʒһ</a>| <a href="http://dnf1000.com" target="_blank">ɫˬƵ</a>| <a href="http://cqyouyongpx.com" target="_blank">Ůwwwһ</a>| <a href="http://ruidamo.com" target="_blank">츾AVӰ</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>