pb自定义事件详细

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

pb自定义事件详细解释

单选或多选按钮消息(前缀:pbm_bm)
pbm_bmgetcheck 单选按钮或多选按钮是否被选。
pbm_bmgetstate 按钮是否加亮。
pbm_bmsetcheck 将无线按钮或确认框的选中状态改为未选中状态,反之亦然。
pbm_bmsetstate 加亮或不加亮按钮。
pbm_bmchange 改变按钮的风格,例如,改为单选按钮或组合框。
单选或多选按钮通知消息(前缀:pbm_bn)
pbm_bnclicked 按钮控件被点中。
pbm_bndisable 使按钮控件无效。
pbm_bndoubleclicked 按钮控件被双点。
pbm_bndragdrop 一个对象被放到按钮控件。
pbm_bndragenter 一个对象被拖到按钮控件。
pbm_bndragleave 一个对象被拖离按钮控件。
pbm_bndragover 一个对象被拖经按钮控件。
pbm_bnhilite 按钮控件被加亮。
pbm_bnpaint 按钮控件被绘制。
pbm_bnsetfocus 按钮控件获得聚焦。
pbm_bnunhilite 按钮控件不被加亮。
通用对话框消息(前缀:pbm_cb)
pbm_cbaddstring 将字符串加到通用对话框。
pbm_cbdeletestring 从通用对话框删除一个字符串。
pbm_cbdir 加一个目录列表到通用对话框。
pbm_cbfindstring 搜索以一组字符开头的字符串。
pbm_cbfindstringexact 搜索与所提供的字符完全匹配的字符串。
pbm_cbgetcount 列表框中的项数。
pbm_cbgetcursel 当前被选项的数目。
pbm_cbgetdroppedcontrolset 列表框在屏幕上的坐标位置。
pbm_cbgeteditsel 编辑器控件中被选字符的范围。
pbm_cbgetextendedui 缺省或扩展的用户界面。
pbm_cbgetitemdata 重画的列表框中的4字节(32位)项。
pbm_cbgetitemheight 列表框中某一项的高度。
pbm_cbgetlbtext 列表框中的文本。
pbm_cbgetlbtextlen 列表框中文本的长度。
pbm_cbinsertstring 向列表框中增加新的字符串或4字节项。
pbm_cblimittext 限制能被输入到列表框中的字符数。
pbm_cbresetcontent 删除列表框中所有元素。
pbm_cbselectstring 搜索匹配的字符串并显示。
pbm_cbsetcursel 在列表框中选择并显示一项。
pbm_cbseteditsel 在列表框的编辑区域中选择一块文本。
pbm_cbsetextendedui 设置缺省或扩展的用户界面。
pbm_cbsetitemdata 在列表框中设定4字节(32位)项。
pbm_cbsetitemheight 设置列表框中项的高度。
pbm_cbshowdropdown 转换(显示或隐藏)列表框中拖放区域。
通用对话框通知消息(前缀:pbm_cbn)
pbm_cbndblclk 用户在列表中某一项上双点。
pbm_cbndragdrop 一个对象被放到通用对话框控件上。
pbm_cbndragenter 一个对象被拖到通用对话框控件上。
pbm_cbndragleave 一个对象被拖离通用对话框控件。
pbm_cbndragover 一个对象被拖经通用对话框控件。
pbm_cbndropdown 列表框的下放区域即将被显示。
pbm_cbneditchange 编辑器控件中的文本发生变化。


pbm_cbneditupdate 列表框编辑器控件中的
文本即将被改变。
pbm_cbnerrspace 列表框满,不能再向其中加入项。
pbm_cbnkillfocus 通用列表框失去聚焦。
pbm_cbnselchange 列表框中被选文本被改变。
pbm_cbnselendcancel 用户按下了"取消"按钮。
pbm_cbnselendok 用户按下了"确认"按钮。
pbm_cbnsetfocus 通用对话控件拥有聚焦。
数据窗口消息(前缀:pbm_dw)
pbm_dwclosedropdown 关闭下拉式数据窗口。
pbm_dwscrollend 在数据窗口中卷滚到最后一行。
pbm_dwscrollhome 在数据窗口中卷滚到第一行。
pbm_dwscrolllineend 卷滚到当前行的行尾(水平方向)。
pbm_dwscrolllinehome 卷滚到当前行的行首(水平方向)。
数据窗口通知消息(前缀:pbm_dwn)
pbm_dwnbacktabout 即将通过Shift+Tab组合键离开该控件。
pbm_dwnchanging 控件即将被改变。
pbm_dwndropdown 下拉式列表框的下拉部分即将可见。
pbm_dwngraphcreate 即将创建图形。
pbm_dwnitemchangefocus 数据窗口控件中当前项的聚焦改变。
pbm_dwnitemvalidationerror 对当前项的修改引起了一个合法性检查错误。
pbm_dwnkey 有键被按下。使用KeyDown()处理键盘值。
pbm_dwnlbuttondown 鼠标左键被按下。
pbm_dwnlbuttonup 鼠标左键被松开。
pbm_dwnmbuttonclk 鼠标中键点击。
pbm_dwnmbuttondbclk 鼠标中键双击。
pbm_dwnmousemove 鼠标移动。
pbm_dwnprintmarginchange 打印边界被改变。
pbm_dwnprocessenter 回车键被按下。
pbm_dwnrowchange 数据窗口中聚焦从一行转向另一行。
pbm_dwntabdownout 用户在数据窗口最后一行按了下箭头键。
pbm_dwntabout 用户在数据窗口的最后一行/列中按了tab键。
pbm_dwntabupout 用户在数据窗口第一行中按了上箭头键。
动态数据交换(DDE)消息(前缀:pbm_dde)
pbm_ddeddeack 收到一个DDE消息。
pbm_ddeddeinitiate 开始一个DDE会话。
pbm_ddeddeterminate 终止一个DDE会话。
编辑器控件消息(前缀:pbm_em)
pbm_emcanundo 编辑器控件是否能撤消上一次修改。
pbm_ememptyundobuffer 清空由Windows管理的取消操作的缓冲区。
pbm_emfmtlines 在多行编辑器控件的行尾增加或删除回车换行。
pbm_emgetfirstvisibleline 返回编辑器控件中可见的第一行的行号。
pbm_emgethandle 获得编辑器控件使用的内存句柄。
pbm_emgetline 从编辑器控件中复制一行到内存中的一个缓冲区。
pbm_emgetlinecount 返回多行编辑器控件的行数。
pbm_emgetmodify 文本是否被用户修改。
pbm_emgetrect 返回控件的长方形域。
pbm_emgetsel 返回被选文本的起始位置。
pbm_emlimittext 限制用户键入的文本长度。
pbm_emlinefromchar 返回被选文本的行号。
pbm_emlineindex 返回编辑器控件中被选行第一个字符在编辑串中

的位置。
pbm_emlinelength 返回编辑器控件中被选行中的字符数。
pbm_emlinescroll 水平或垂直卷滚编
辑器控件。
pbm_emreplacesel 从剪贴板或从键盘上用新文本替换被选文本。
pbm_emsethandle 设置编辑器控件的句柄指向内存中的一个缓冲区。
pbm_emsetmodify 设置编辑器控件的modified标志。
pbm_emsetpasswordchar 设置用户输入任何文本时显示的字符,在输入密码时的显示。
pbm_emsetrect 设置/重置编辑器控件所在的长方形区域,编辑器控件中的文本被重画。
pbm_emsetrectnp 除了不重画文本,大致与setrect相同。
pbm_emsetsel 选择字符。
pbm_emsettabstops 在多行编辑器控件中设置tabstops。
pbm_emsetwordbreak 设置新的词拆分函数。
pbm_emsetwordbreakproc 设置新的词拆分过程。
pbm_emundo 撤消最近的编辑操作。
编辑控件通知消息(前缀:pbm_en)
pbm_enchange 编辑器控件中的文本发生改变。
pbm_enerrspace 编辑器控件内存缓冲区溢出。
pbm_enhscroll 用户点中上水平卷滚条。
pbm_enmaxtext 用户试图输入比允许更多的文本。
pbm_enupdate 编辑器控件即将显示用户的修改。
pbm_envscroll 用户点中了垂直卷滚条。
列表框消息(前缀:pbm_lb)
pbm_lbaddstring 向列表框控件中增加一项或一个字符串。
pbm_lbdeletestring 从列表框中删除一项或一个字符串。
pbm_lbdir 用目录列表填充列表框。
pbm_lbfindstring 在列表框中搜索与所给字符串部分匹配的第一项。
pbm_lbfindstringexact 在列表框中搜索与所给字符串精确匹配的第一项。
pbm_lbgetcaretindex 在列表框中搜索拥有聚焦的项。
pbm_lbgetcount 确定列表框中的项数。
pbm_lbgetcursel 确定所选项是第几项。
pbm_lbgethorizontalextent 获得列表框的宽度、计算水平卷滚。
pbm_lbgetitemheight 确定列表框控件中项的高度。
pbm_lbgetitemrect 确定列表框的尺寸。
pbm_lbgetsel 获得列表框中当前所选的项。
pbm_lbgetselcount 在多选列表框中获得所选项的数目。
pbm_lbgetselitems 用列表框中表框各自的项号填充一个给定的整数数组。
pbm_lbgettext 获得列表框中当前所选项的文本。
pbm_lbgettextlen 获得列表框中当前所选项的文本中的字符数。
pbm_lbgettopindex 确定列表框中可见的最上面一项的项号。
pbm_lbinsertstring 向列表框中加入一个新字符串。
pbm_lbresetcontent 重置(消除)列表框中的内容。
pbm_lbselectstring 搜索并加亮与所给字符匹配的字符串。
pbm_lbselitemrange 选择/取消列表框中某一范围中的项。
pbm_lbsetcaretindex 设置列表框中的某一项拥有聚焦。
pbm_lbsetcolumnwidth 设置列表框中列的宽度。
pbm_lbsetcursel 在列表框中选择并加亮一项;如果需要,卷滚到列表框。
pb

m_lbsethorizontaltext 设置列表框中被水平卷滚的单元数。
pbm_lbsetitemdata 设置与列表框相关的32位/4字节值。
pbm_lbsetitemheight 设置列表框中
项的高度。
pbm_lbsetsel 在列表框中选择一个字符串。
pbm_lbsettabstops 设置列表框控件中tabstops的位置。
pbm_lbsettopindex 卷滚列表框使特定的项成为可见的最上面一项。
列表框通知消息(前缀:pbm_en)
pbm_endblclk 用户在列表框控件中的某一项上双击。
pbm_enerrspace 用户试图超越可在列表框中输入字符的最大限制。
pbm_enselcancel 当前选取文本被取消。
pbm_enselchange 用户在列表框中选择或取消了一项。
窗口消息(前缀:pbm_)
pbm_activateapp 被激活的窗口属于另外一个应用。
pbm_askcbformatname 要求剪贴板中的内容被复制到一个使用自定义格式的文本缓冲区中。
pbm_char 传送键盘上按下的键。
pbm_chartoitem 通过转换键盘来的字符,帮助列表框定位其中的项。
pbm_childactivate 一个子窗口被移动或激活。
pbm_clear 用户要删除当前编辑器控件中的内容。
pbm_command 用户选择了一个菜单项、控件,或使用了加速键。
pbm_compacting 系统内存资源不足;当Windows占用了多于1/8的CPU时间紧缩内存时,产生这条消息。
pbm_compareitem 当新的一项被加入列表框或组合框时产生此消息,Window用这条消息进行项之间的比较。
pbm_ctlcolor 一个控件即将被画出,可在此时改变控件的颜色。
pbm_deadchar 用户选择了一种非英语字符集或其它特殊字符集,这将改变下面将要输入的字符。
pbm_deleteitem 从列表框或通用对话框中移去一项。
pbm_destroyclipboard 剪贴板内容被清除。
pbm_devmodechanged WIN.INI中的一个设备名被修改。
pbm_drawclipboard 剪贴板内容发生改变。
pbm_drawitem 列表框或通用对话框的一项内容被改变。
pbm_dropfiles 当鼠标左键在一个注册为拖放文件接受器的应用上释放时,发出该消息。
pbm_erasebkgnd 窗口的客户区需要重画。
pbm_fontchange 应用可用的字体数改变。
pbm_getdlgcode 通知消息,说明当前使用哪种类型的键盘。
pbm_getfont 获取当前激活的字体。
pbm_getminmaxinto Windows正在检查最小化或最大化窗口的尺寸。
pbm_gettext 从一个控件(如按钮或编辑器控件)中复制文本到一个内存缓冲区。
pbm_gettextlength 用来确定一个控件中的字符数。
pbm_hscrollclipboard 剪贴板的水平卷滚条被使用。
pbm_iconerasebkgnd 一个最小化窗口需要重化背景。
pbm_initdialog 一个对话框即将被显示。
pbm_initmenu 一个菜单即将被显示。
pbm_initmenupopup 一个弹出式窗口即将被显示。
pbm_keydown 键盘上的一个键被按下。
pbm_keyup 键盘上的一个键被释放


pbm_mdiactive 一个MDI子窗口(表单)被激活。
pbm_mdicascade 以重叠的形式重排所有的表单。
pbm_mdicreate 创建一个表单。
pbm_mdidestroy 从MDI框架中移去一个表单。
pbm_mdigetactive 获
得当前活动的MDI表单的句柄。
pbm_mdiiconrange 在一个MDI框架中重排最小化表单的图标。
pbm_mdimaximize 最大化一个MDI子表单。
pbm_mdinext 激活下一个MDI表单(紧接着活动表单的表单)。
pbm_mdirestore 把MDI表单恢复到它原来的大小。
pbm_mdisetmenu 将一个菜单与一个MDI表单联系起来。
pbm_mdifitle 平铺所有的MDI表单。
pbm_measureitem 这个消息被送给即将创建的、内有按钮或其它控件的窗口。
pbm_menuchar 用户使用了一个快捷键,但系统不支持该快捷键。
pbm_menuselect 用户选择了一个菜单项。
pbm_mouseactivate 用户在一个非活动窗口中点击了鼠标。
pbm_mousemove 用户移动了鼠标。
pbm_ncactivate 窗口的非客户区即将被激活。
pbm_nccalcsize 窗口的尺寸需要重新计算。
pbm_nccreate 窗口即将创建它的非客户区。
pbm_ncdestroy 窗口的非共享区被析构。
pbm_nchittest 每次非客户区被移动时都发送该消息。
pbm_nclbuttondblclk 用户在非客户区双点了鼠标左键。
pbm_ncpaint 非客户需要画出。
pbm_nextdlgctl 在对话框中将聚焦转给另一个控件。
pbm_paint 窗口的客户区需要被画出。
pbm_paintclipboard 剪贴板应用有剪贴操作,剪贴板查看器需重画。
pbm_palettechanged 系统调色板被改变。
pbm_paletteischanging 系统调色板即将被改变。
pbm_parentnotify 通知父窗口一个子窗口即将被创建。
pbm_querydragicon 用户要拖一个最小化窗口。
pbm_queryendsession 通知消息,说明窗口即将被关闭。
pbm_querynewpalette 应用即将收到输入聚焦,应该执行必要的颜色调整。
pbm_queryopen 一个最小化窗口即将被恢复。
pbm_quit 应用处理的最后一个消息。
pbm_renderallformats 通知一个剪贴板格式的拥有者,应用将失去所有的格式。
pbm_renderformats 通知消息,说明放在剪贴板中的数据应该用一种特殊格式传送。
pbm_setcursor 通知消息,说明鼠标指针在一个窗口中移动。
pbm_setfont 用来在对话框中改变字体。
pbm_setredraw 在加一个新项之前发送给列表框或通用对话框。
pbm_settext 用来改变窗口的标题或文本。
pbm_sizeclipboard 剪贴板查看器应用改变尺寸。
pbm_spoolerstatus 一个打印管理器任务被添加或删除。
pbm_syschar <ALT>键和其它某键同时被按下。
pbm_syscolorchange 一种或多种系统颜色被改变。
pbm_syscommand 用户选择了一个系统菜单命令。
pbm_sysdeadchar 通知消息,说明一种非英语字符集被选定。
pbm_syskeydown 用户按下某键

的同时按下了<ALT>键。
pbm_syskeyup 用户释放了<ALT>组合键。
pbm_timechange 系统时钟被修改。
pbm_undo 从undo缓冲区复制文本到编辑器控件。
pbm_vkeytoitem 当一个列表框拥有聚焦时,用户按下了一个键。
pbm_vscroll 用户点击了垂直
卷滚条。
pbm_vscrollclipboard 剪贴板查看器的垂直卷滚条被点击。
pbm_windowposchanged 窗口位置发生改变。
pbm_windowposchanging 窗口位置即将发生改变。
pbm_wininichange WIN.INI文件被修改。











数据窗口控件常用的事件及解释如下:
1、ItemChanged事件:用户在编辑字段中的内容后触发该事件。该事件中的dwo表示当前操作对象,经常使用来判断当前编辑的字段名称;使用参数data来获取当前正输入的内容。通常在该事件上编写程序,判断用户输入的内容是否合理。比如,校验身份证号码是否正确等。
2、DBError事件:在数据保存错误时触发该事件。通常在该窗口中返回1,以屏蔽系统的错误窗口,避免英文界面的不友好。
3、ItemError事件:在字段中的数据不能通过校验规则时触发该事件。通常在该事件中显示错误信息。事件参数dwo可以用来判断当前错误字段的名称。
4、LoseFocus事件:在数据窗口事件失去焦点时触发该事件。通常在该事件中调用函数AcceptText,以便接受最后输入的内容。但是,从Pb9.0开始,这个事件中编写这个函数不再是必须的了。
5、RowFocusChanged事件:在行焦点改变时触发该事件。该事件的参数CurrentRow用来获取当前数据行。通常在该事件上改变当前行的选中标志,或者获取当前行的数据,然后执行一定的业务处理。
6、Clicked事件:当用户点击数据窗口控件时触发该事件。通常在该事件上编写脚本,进行排序、改变当前选中行,或者根据选中行中某字段的数据进行一定的业务处理。事件的参数Row表示点击的数据行,dwo表示点击的对象。
7、Constructor事件:当数据窗口构建时触发该事件。通常在该事件中为数据窗口设置事务对象,This.SetTransObject(SQLCA)
以上事件是经常使用的事件,通过这些事件基本上可以开发软件应用项目了。








相关文档
最新文档