发信人: wanckey() 
整理人: leitiger(2002-06-11 11:22:51), 站内信件
 | 
 
 
【 在 gao_mallard 的大作中提到:】
 :rt
 :
 :......
  我找到了,当时该文是叫changxufeng的网友发的,这里对他表示感谢,现在我写给你:
 下面我们解释一下PowerBuilder中以pbm开头的内部映射事件的含义,按类举一些主要例子,其余的事件类推。  
 
 单选或多选按钮消息(前缀:pbm_bm)  
 getcheck 单选按钮或多选按钮是否被选 
 getstate 按钮是否加亮 
 setcheck 将无线按钮或确认框的选中状态改为未选中状态,反之亦然 
 setstate 加亮或不加亮按钮 
 change 改变按钮的风格,例如,改为单选按钮或组合框 
 单选或多选按钮通知消息(前缀:pbm_bn) 
 clicked 按钮控件被点中 
 disable 使按钮控件无效 
 double-clicked 按钮控件被双点 
 dragdrop 一个对象被放到按钮控件 
 dragenter 一个对象被拖到按钮控件 
 dragleave 一个对象被拖离按钮控件 
 dragover 一个对象被拖经按钮控件 
 hilite 按钮控件被加亮 
 paint 按钮控件被绘制 
 setfocus 按钮控件获得聚焦 
 unhilite 按钮控件不被加亮 
 通用对话框消息(前缀:pbm_cb) 
 addstring 将字符串加到通用对话框 
 deletestring 从通用对话框删除一个字符串 
 dir 加一个目录列表到通用对话框 
 findstring 搜索以一组字符开头的字符串 
 findstringexact 搜索与所提供的字符完全匹配的字符串 
 getcount 列表框中的项数 
 getcursel 当前被选项的数目 
 getdroppedcontrolset 列表框在屏幕上的坐标位置 
 geteditsel 编辑器控件中被选字符的范围 
 getextendedui 缺省或扩展的用户界面 
 getitemdata 重画的列表框中的4字节(32位)项 
 getitemheight 列表框中某一项的高度 
 getlbtext 列表框中的文本 
 getlbtextlen 列表框中文本的长度 
 insertstring 向列表框中增加新的字符串或4字节项 
 limittext 限制能被输入到列表框中的字符数 
 resetcontent 删除列表框中所有元素 
 selectstring 搜索匹配的字符串并显示 
 setcursel 在列表框中选择并显示一项 
 seteditsel 在列表框的编辑区域中选择一块文本 
 setextendedui 设置缺省或扩展的用户界面 
 setitemdata 在列表框中设定4字节(32位)项 
 setitemheight 设置列表框中项的高度 
 showdropdown转换(显示或隐藏)列表框中拖放区域 
 通用对话框通知消息(前缀:pbm_cbn) 
 dblclk 用户在列表中某一项上双点 
 dragdrop 一个对象被放到通用对话框控件上 
 dragenter 一个对象被拖到通用对话框控件上 
 dragleave 一个对象被拖离通用对话框控件 
 dragover 一个对象被拖经通用对话框控件 
 dropdown 列表框的下放区域即将被显示 
 editchange 编辑器控件中的文本发生变化 
 editupdate 
 列表框编辑器控件中的文本即将被改变 
 errspace 
 列表框满,不能再向其中加入项 
 killfocus 
 通用列表框失去聚焦 
 selchange 
 列表框中被选文本被改变 
 selendcancel 
 用户按下了"取消"按钮 
 selendok 
 用户按下了"确认"按钮 
 setfocus 
 通用对话控件拥有聚焦 
 数据窗口消息(前缀:pbm_dw) 
 closedropdown 
 关闭下拉式数据窗口 
 scrollend 
 在数据窗口中卷滚到最后一行 
 scrollhome 
 在数据窗口中卷滚到第一行 
 scrolllineend 
 卷滚到当前行的行尾(水平方向) 
 scrolllinehome 
 卷滚到当前行的行首(水平方向) 
 数据窗口通知消息(前缀:pbm_dwn) 
 backtabout 
 即将通过Shift+Tab组合键离开该控件 
 changing 
 控件即将被改变 
 dropdown 
 下拉式列表框的下拉部分即将可见 
 graphcreate 
 即将创建图形 
 itemchangefocus 
 数据窗口控件中当前项的聚焦改变 
 itemvalidationerror 
 对当前项的修改引起了一个合法性检查错误 
 key 
 有键被按下。使用KeyDown()处理键盘值 
 lbuttondown 
 鼠标左键被按下 
 lbuttonup 
 鼠标左键被松开 
 mbuttonclk 
 鼠标中键点击 
 mbuttondbclk 
 鼠标中键双击 
 mousemove 
 鼠标移动 
 printmarginchange 
 打印边界被改变 
 processenter 
 回车键被按下 
 rowchange 
 数据窗口中聚焦从一行转向另一行 
 tabdownout 
 用户在数据窗口最后一行按了下箭头键 
 tabout 
 用户在数据窗口的最后一行/列中按了tab键 
 tabupout 
 用户在数据窗口第一行中按了上箭头键 
 动态数据交换(DDE)消息(前缀:pbm_dde) 
 ddeack 
 收到一个DDE消息 
 ddeinitiate 
 开始一个DDE会话 
 ddeterminate 
 终止一个DDE会话 
 编辑器控件消息(前缀:pbm_em) 
 canundo 
 编辑器控件是否能撤消上一次修改 
 emptyundobuffer 
 清空由Windows管理的取消操作的缓冲区 
 fmtlines 
 在多行编辑器控件的行尾增加或删除回车换行 
 getfirstvisibleline 
 返回编辑器控件中可见的第一行的行号 
 gethandle 
 获得编辑器控件使用的内存句柄 
 getline 
 从编辑器控件中复制一行到内存中的一个缓冲区 
 getlinecount 
 返回多行编辑器控件的行数 
 getmodify 
 文本是否被用户修改 
 getrect 
 返回控件的长方形域 
 getsel 
 返回被选文本的起始位置 
 limittext 
 限制用户键入的文本长度 
 linefromchar 
 返回被选文本的行号 
 lineindex 
 返回编辑器控件中被选行第一个字符在编辑串中的位置 
 linelength 
 返回编辑器控件中被选行中的字符数 
 linescroll 
 水平或垂直卷滚编辑器控件 
 replacesel 
 从剪贴板或从键盘上用新文本替换被选文本 
 sethandle 
 设置编辑器控件的句柄指向内存中的一个缓冲区 
 setmodify 
 设置编辑器控件的modified标志 
 setpasswordchar 
 设置用户输入任何文本时显示的字符,在输入密码时的显示 
 setrect 
 设置/重置编辑器控件所在的长方形区域,编辑器控件中的文本被重画。 
 setrectnp 
 除了不重画文本,大致与setrect相同 
 setsel 
 选择字符 
 settabstops 
 在多行编辑器控件中设置tabstops 
 setwordbreak 
 设置新的词拆分函数 
 setwordbreakproc 
 设置新的词拆分过程 
 undo 
 撤消最近的编辑操作 
 编辑控件通知消息(前缀:pbm_en) 
 change 
 编辑器控件中的文本发生改变 
 errspace 
 编辑器控件内存缓冲区溢出 
 hscroll 
 用户点中上水平卷滚条 
 maxtext 
 用户试图输入比允许更多的文本 
 update 
 编辑器控件即将显示用户的修改 
 vscroll 
 用户点中了垂直卷滚条 
 ------ 
 列表框消息(前缀:pbm_lb)  
 
 addstring 向列表框控件中增加一项或一个字符串 
 deletestring 从列表框中删除一项或一个字符串 
 dir 用目录列表填充列表框 
 findstring 在列表框中搜索与所给字符串部分匹配的第一项 
 findstringexact 在列表框中搜索与所给字符串精确匹配的第一项 
 getcaretindex 在列表框中搜索拥有聚焦的项 
 getcount 确定列表框中的项数 
 getcursel 确定所选项是第几项 
 gethorizontalextent 获得列表框的宽度、计算水平卷滚 
 getitemheight 确定列表框控件中项的高度 
 getitemrect 确定列表框的尺寸 
 getsel 获得列表框中当前所选的项 
 getselcount 在多选列表框中获得所选项的数目 
 getselitems 用列表框中表框各自的项号填充一个给定的整数数组 
 gettext 获得列表框中当前所选项的文本 
 gettextlen 获得列表框中当前所选项的文本中的字符数 
 gettopindex 确定列表框中可见的最上面一项的项号 
 insertstring 向列表框中加入一个新字符串 
 resetcontent 重置(消除)列表框中的内容 
 selectstring 搜索并加亮与所给字符匹配的字符串 
 selitemrange 选择/取消列表框中某一范围中的项 
 setcaretindex 设置列表框中的某一项拥有聚焦 
 setcolumnwidth 设置列表框中列的宽度 
 setcursel 在列表框中选择并加亮一项;如果需要,卷滚到列表框 
 sethorizontaltext 设置列表框中被水平卷滚的单元数 
 setitemdata 设置与列表框相关的32位/4字节值 
 setitemheight 设置列表框中项的高度。 
 setsel 在列表框中选择一个字符串 
 settabstops 设置列表框控件中tabstops的位置 
 settopindex 卷滚列表框使特定的项成为可见的最上面一项 
 
 
 列表框通知消息(前缀:pbm_en)  
 
 dblclk 用户在列表框控件中的某一项上双击 
 errspace 用户试图超越可在列表框中输入字符的最大限制 
 selcancel 当前选取文本被取消 
 selchange 用户在列表框中选择或取消了一项 
 
 
 窗口消息(前缀:pbm_)  
 
 activateapp 被激活的窗口属于另外一个应用 
 askcbformatname 要求剪贴板中的内容被复制到一个使用自定义格式的文本缓冲区中 
 char 传送键盘上按下的键 
 chartoitem 通过转换键盘来的字符,帮助列表框定位其中的项 
 childactivate 一个子窗口被移动或激活 
 clear 用户要删除当前编辑器控件中的内容 
 command 用户选择了一个菜单项、控件,或使用了加速键 
 compacting 系统内存资源不足;当Windows占用了多于1/8的CPU时间紧缩内 
 存时,产生这条消息 
 compareitem 当新的一项被加入列表框或组合框时产生此消息,Window用这条 
 消息进行项之间的比较 
 ctlcolor 一个控件即将被画出,可在此时改变控件的颜色 
 deadchar 用户选择了一种非英语字符集或其它特殊字符集,这将改变下 
 面将要输入的字符 
 deleteitem 从列表框或通用对话框中移去一项 
 destroyclipboard 剪贴板内容被清除 
 devmodechanged WIN.INI中的一个设备名被修改 
 drawclipboard 剪贴板内容发生改变 
 drawitem 列表框或通用对话框的一项内容被改变 
 dropfiles 当鼠标左键在一个注册为拖放文件接受器的应用上释放时,发 
 出该消息 
 erasebkgnd 窗口的客户区需要重画 
 fontchange 应用可用的字体数改变 
 getdlgcode 通知消息,说明当前使用哪种类型的键盘 
 getfont 获取当前激活的字体 
 getminmaxinto Windows正在检查最小化或最大化窗口的尺寸 
 gettext 从一个控件(如按钮或编辑器控件)中复制文本到一个内存缓冲区 
 gettextlength 用来确定一个控件中的字符数 
 hscrollclipboard 剪贴板的水平卷滚条被使用 
 iconerasebkgnd 一个最小化窗口需要重化背景 
 initdialog 一个对话框即将被显示 
 initmenu 一个菜单即将被显示 
 initmenupopup 一个弹出式窗口即将被显示 
 keydown 键盘上的一个键被按下 
 keyup 键盘上的一个键被释放 
 mdiactive 一个MDI子窗口(表单)被激活 
 mdicascade 以重叠的形式重排所有的表单 
 mdicreate 创建一个表单 
 mdidestroy 从MDI框架中移去一个表单 
 mdigetactive 获得当前活动的MDI表单的句柄 
 mdiiconrange 在一个MDI框架中重排最小化表单的图标 
 mdimaximize 最大化一个MDI子表单 
 mdinext 激活下一个MDI表单(紧接着活动表单的表单) 
 mdirestore 把MDI表单恢复到它原来的大小 
 mdisetmenu 将一个菜单与一个MDI表单联系起来 
 mdifitle 平铺所有的MDI表单 
 measureitem 这个消息被送给即将创建的、内有按钮或其它控件的窗口 
 menuchar 用户使用了一个快捷键,但系统不支持该快捷键 
 menuselect 用户选择了一个菜单项 
 mouseactivate 用户在一个非活动窗口中点击了鼠标 
 mousemove 用户移动了鼠标 
 ncactivate 窗口的非客户区即将被激活 
 nccalcsize 窗口的尺寸需要重新计算 
 nccreate 窗口即将创建它的非客户区 
 ncdestroy 窗口的非共享区被析构 
 nchittest 每次非客户区被移动时都发送该消息 
 nclbuttondblclk 用户在非客户区双点了鼠标左键 
 ncpaint 非客户需要画出 
 nextdlgctl 在对话框中将聚焦转给另一个控件 
 paint 窗口的客户区需要被画出 
 paintclipboard 剪贴板应用有剪贴操作,剪贴板查看器需重画 
 palettechanged 系统调色板被改变 
 paletteischanging 系统调色板即将被改变 
 parentnotify 通知父窗口一个子窗口即将被创建 
 querydragicon 用户要拖一个最小化窗口 
 queryendsession 通知消息,说明窗口即将被关闭 
 querynewpalette 应用即将收到输入聚焦,应该执行必要的颜色调整 
 queryopen 一个最小化窗口即将被恢复 
 quit 应用处理的最后一个消息 
 renderallformats 通知一个剪贴板格式的拥有者,应用将失去所有的格式 
 renderformats 通知消息,说明放在剪贴板中的数据应该用一种特殊格式传送 
 setcursor  
 
 
 setcursor 通知消息,说明鼠标指针在一个窗口中移动 
 setfont 用来在对话框中改变字体 
 setredraw 在加一个新项之前发送给列表框或通用对话框 
 settext 用来改变窗口的标题或文本 
 sizeclipboard 剪贴板查看器应用改变尺寸 
 spoolerstatus 一个打印管理器任务被添加或删除 
 syschar <ALT>键和其它某键同时被按下 
 syscolorchange 一种或多种系统颜色被改变 
 syscommand 用户选择了一个系统菜单命令 
 sysdeadchar 通知消息,说明一种非英语字符集被选定 
 syskeydown 用户按下某键的同时按下了<ALT>键 
 syskeyup 用户释放了<ALT>组合键 
 timechange 系统时钟被修改 
 undo 从undo缓冲区复制文本到编辑器控件 
 vkeytoitem 当一个列表框拥有聚焦时,用户按下了一个键 
 vscroll 用户点击了垂直卷滚条 
 vscrollclipboard 剪贴板查看器的垂直卷滚条被点击 
 windowposchanged 窗口位置发生改变 
 windowposchanging 窗口位置即将发生改变 
 wininichange WIN.INI文件被修改 
 
 
 
  ---- 实在无聊,泡美眉去。  | 
 
 
 |