pb常用事件分析.docx

上传人:b****9 文档编号:26174167 上传时间:2023-06-17 格式:DOCX 页数:24 大小:24.34KB
下载 相关 举报
pb常用事件分析.docx_第1页
第1页 / 共24页
pb常用事件分析.docx_第2页
第2页 / 共24页
pb常用事件分析.docx_第3页
第3页 / 共24页
pb常用事件分析.docx_第4页
第4页 / 共24页
pb常用事件分析.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

pb常用事件分析.docx

《pb常用事件分析.docx》由会员分享,可在线阅读,更多相关《pb常用事件分析.docx(24页珍藏版)》请在冰豆网上搜索。

pb常用事件分析.docx

pb常用事件分析

1.window中的事件

事件名触发的时机

01.Activate在窗口激活之前触发

02.Clicked当用户用鼠标单击窗口的空白区域(没有控件的区域)时触发

03.Close当关闭窗口时触发

04.CloseQuery当清除或关闭窗口时触发。

然后检查Message.ReturnValue的值,若为1,则窗口不能关闭

05.Deactivate当窗口变为非活动状态时触发

06.DoubleClicked当用户双击窗口的空白区域时触发

07.DragDrop当一个可拖动的控件被拖动到窗口上时触发

08.DragEnter当一个可拖动的控件进入窗口时触发

09.DragLeave当一个可拖动的控件离开窗口时触发

10.DragWithin当一个可拖动的控件在窗口内部拖动时触发

11.Hide在窗口被隐藏时触发

12.HotLinkAlarm在DDE中服务器应用已经发送了新的数据,客户DDE应用已经接收到这些数据时触发

13.Key当用户击了一个键且插入点不在RichTextEdit编辑控件或数据窗口控件时触发

14.MouseDown当用户在窗口的空白区域按下鼠标左键时触发

15.MouseMove当鼠标在窗口内移动时触发

16.MouseUp当用户在窗口的空白区域释放鼠标左键时触发

17.Open当程序调用以此窗口为参数的Open函数时,此事件在该窗口打开之后,显示之前触发

18.Help.........

19.Other当一个非PowerBuilder事件的Windows信息发生时触发

20.RButtonDown在窗口的空白区域单击鼠标右键时触发

21.RemoteExec当一个DDE客户应用发送了一个命令时触发

22.RemoteHotLinkStart当一个DDE客户应用开始一个热连接时触发

23.RemoteHotLinkStop当一个DDE客户应用结束一个热连接时触发

24.RemoteRequest当一个DDE客户应用请求数据时触发

25.RemoteSend当一个DDE客户应用已经发送了数据时触发

26.Resize当用户或程序打开或重设窗口大小时触发

27.Show当程序运行此窗口的show函数时,此事件在窗口显示之前触发

28.SystemKey当插入点不在某个行编辑中且用户按了ALT或ALT加其它键时触发

29.Timer在调用Timer函数后,经过了Timer函数指定的时间后触发

30.ToolBarMoved当MDI窗口的工具条移动时触发

以上是我新建一个window是window的事件原来的顺序,

下面是我自己常用的排序:

01.window打开时发生的事件

事件名触发的时机

Activate在窗口激活之前触发

Resize当用户或程序打开或重设窗口大小时触发

Open当程序调用以此窗口为参数的Open函数时,此事件在该窗口打开之后,显示之前触发

Show当程序运行此窗口的show函数时,此事件在窗口显示之前触发

02.window关闭时发生的事件

Deactivate当窗口变为非活动状态时触发

CloseQuery当清除或关闭窗口时触发。

然后检查Message.ReturnValue的值,若为1,则窗口不能关闭

Close当关闭窗口时触发

03.关于鼠标击键事件

Clicked当用户用鼠标单击窗口的空白区域(没有控件的区域)时触发

DoubleClicked当用户双击窗口的空白区域时触发

MouseDown当用户在窗口的空白区域按下鼠标左键时触发

MouseMove当鼠标在窗口内移动时触发

MouseUp当用户在窗口的空白区域释放鼠标左键时触发、

RButtonDown在窗口的空白区域单击鼠标右键时触发

注:

当按下鼠标左键时,MouseDown事件触发,当释放鼠标左键时,Clicked事件和MouseUp事件触发

04.计时触发

Timer在调用Timer函数后,经过了Timer函数指定的时间后触发

05.托动触发

DragDrop当一个可拖动的控件被拖动到窗口上时触发

DragEnter当一个可拖动的控件进入窗口时触发

DragLeave当一个可拖动的控件离开窗口时触发

DragWithin当一个可拖动的控件在窗口内部拖动时触发

06.菜单及菜单工具栏移动是触发

ToolBarMoved当MDI窗口的工具条移动时触发

07.其它不常用的(指的是我自己)

Hide在窗口被隐藏时触发

HotLinkAlarm在DDE中服务器应用已经发送了新的数据,客户DDE应用已经接收到这些数据时触发

RemoteExec当一个DDE客户应用发送了一个命令时触发

RemoteHotLinkStart当一个DDE客户应用开始一个热连接时触发

RemoteHotLinkStop当一个DDE客户应用结束一个热连接时触发

RemoteRequest当一个DDE客户应用请求数据时触发

RemoteSend当一个DDE客户应用已经发送了数据时触发

Key当用户击了一个键且插入点不在RichTextEdit编辑控件或数据窗口控件时触发

Help.........

Other当一个非PowerBuilder事件的Windows信息发生时触发

SystemKey当插入点不在某个行编辑中且用户按了ALT或ALT加其它键时触发

-----------------------------------------------------------------------

在window上的能应用的控件非常多

但是控件的事件有一部分是相同的

2.窗口上控件的公共事件

事件名触发的时机

Clicked当单击窗口或控件时触发

Constructor在窗口中的open事件发生之前触发

Destructor在窗口中的close事件发生之后触发

GetFocus在此控件得到焦点上时触发

LoseFocus在此控件失去焦点时触发

DragDrop当一个可拖动的控件被拖动到窗口或控件上时触发

DragEnter当一个可拖动的控件进入窗口或控件上时触发

DragLeave当一个可拖动的控件离开窗口或控件时触发

DragWithin当一个可拖动的控件在窗口或控件内部时触发

RbuttonDown在控件区域内单击鼠标右键时触发

Other当一个非PowerBuilder事件的Windows信息发生时触发

-------------------------------------------------------------------------

3.datawindow上的事件,按照顺序(除开公用事件)

事件名称事件触发的时机

01.ButtonClicking在数据窗口中的按钮对象正在被单击时触发

02.ButtonClicked在数据窗口中的按钮对象被单击后触发

03.DbError当数据窗口中发生了数据库错误时触发

04.DoubleClicked当用户双击数据窗口控件时触发;对于RichText风格的数据窗口,当双击数据窗口中的文本时触发

05.EditChanged当光标进入数据窗口对象中的一个字段时触发

06.Error当数据窗口数据表达式或属性表达式中发现错误时触发

07.ItemChanged当数据窗口上的区域被修改并且失去了焦点(如用户按回车键、Tab键或箭头键,或者用鼠标选另一个区域)时触发

08.ItemError当一个域被修改并且失去焦点,且域不符合列上的合法性规则时触发

09.ItemFocusChanged当焦点改变时触发

10.PrintStart当数据窗口打印开始时触发

11.PrintEnd当数据窗口打印结束时触发

12.PrintPage在数据窗口的每一页设置打印格式之前触发

13.Resize当用户或程序重设窗口大小时触发

14.RetrieveStart当数据窗口检索将要开始时触发

15.RetrieveEnd当数据窗口的检索完成时触发

16.RetrieveRow在一行数据被检索出来之后触发

17.RowFocusChanging当数据窗口当前行正在改变时触发

18.RowFocusChanged当数据窗口当前行改变之后触发

19.ScrollHorizontal当用户用Tab键、箭头键或滚动条左右滚动数据窗口控件时触发

20.ScrollVertical当用户用Tab键、箭头键或滚动条上下滚数据窗口控件时触发

21.SqlPreview在调用Retrieve、Update或Selectrow函数时,SQL语句提交到DBMS之前触发

22.UpdateStart恰在调用Update函数之后,数据窗口中的改变发送到数据库之前触发

23.UpdateEnd当所有从数据窗口到数据库的修改完成时触发

说一下我个人常用的几种事件

01.数据窗口字段输入的时候触发的事件

EditChanged当光标进入数据窗口对象中的一个字段时触发

ItemChanged当数据窗口上的区域被修改并且失去了焦点(如用户按回车键、Tab键或箭头键,或者用鼠标选另一个区域)时触发

ItemFocusChanged当焦点改变时触发

ItemError当一个域被修改并且失去焦点,且域不符合列上的合法性规则时触发

如果EditChanged,ItemChanged,ItemFocusChanged这三个事件报错促发ItemError

如果在ItemChanged事件中设置了行为/返回代码1,则DataWindow控件拒绝接受数据且不允许焦点发生变化

02.鼠标单双击数据窗口按钮

ButtonClicking在数据窗口中的按钮对象正在被单击时触发

ButtonClicked在数据窗口中的按钮对象被单击后触发

eg:

choosecasedwo.name

case'cb_name'

//动作......

case.......

endchoose

03.数据窗口检索前后触发的事件

RetrieveStart当数据窗口检索将要开始时触发

RetrieveEnd当数据窗口的检索完成时触发

RetrieveRow在一行数据被检索出来之后触发

在RetrieveStart事件中设置了行为/返回代码2,在检索数据之前不要重置行,也就是上次retrieve的数据会被保留下来

04.打印前后

PrintStart当数据窗口打印开始时触发

PrintEnd当数据窗口打印结束时触发

PrintPage在数据窗口的每一页设置打印格式之前触发

4.单行编辑器控件、编辑掩码控件、多行编辑控件的事件

这三个控件有相同的事件,都有公共事件中除了Clicked事件之外的10种事件,另外还有Modify事件

Modify事件在控件的文本被改变之后,用户按了回车键或Tab键,或用鼠标把焦点改变到另一个控件上时触发

---------------------------------------------------------------------

5.超文本编辑控件的事件

事件名称触发的时机

01.FileExists当该控件的内容保存到一个已存在的文件时触发

02.InputFieldSelected当选定输入域后双击或按下回车键时触发

03.key当按下一个键时触发

04.Modify当该控件中的内容第一次改变,但还没有保存时触发

05.MouseDown当按下鼠标左键时触发

06.MouseMove当鼠标在该控件中移动时触发

07.MouseUp当放开鼠标左键时触发

08.PictureSelected当选定位图后双击或按下回车键时触发

09.PrintFooter当打印该控件内容的页脚时触发

10.PrintHeader当打印该控件内容的页眉时触发

11.RbuttonUp当在该控件中放开鼠标右键时触发

---------------------------------------------------------------------

6.滚动条事件

左右滚动条事件名称事件触发时机

LineLeft当点中了控件的左箭头时触发

LineRight当点中了控件的右箭头时触发

PageLeft当点中了控件的左部的开放空间时触发

PageRight当点中了控件的右部的开放空间时触发

Moved当控件的滚动钮被移动时触发

上下滚动条事件名称事件触发时机

LineDown当点中了控件的下箭头时触发

LineUp当点中了控件的上箭头时触发

PageDown当点中了控件的下部的开放空间时触发

PageUp当点中了控件的上部的开放空间时触发

Moved当控件的滚动钮被移动时触发

----------------------------------------------------------------------

7.列表框控件的事件

PowerBuilder提供了四个列表框控件:

列表框、图片列表框、下拉列表框和下拉图片列表框。

它们都有公共事件中除了Clicked事件之外的10种事件。

此外,下拉列表框和下拉图片列表框还有DoubleClicked事件、Modify事件和SelectionChanged事件。

列表框、图片列表框还有DoubleClicked事件和SelectionChanged事件。

------------------------------------------------------------------------

8.树状浏览控件的事件

事件名称事件触发时机

01.BeginDrag按下鼠标左键开始拖动时触发

02.BeginLabelEdit编辑TreeView选中的项标签时触发

03.BeginRightDrag按下鼠标右键开始拖动时触发

04.DeleteItemTreeView项被删除时触发

05.DoubleClicked双击鼠标左键时触发

06.EndLabelEdit对TreeView的项标签结束编辑时触发

07.ItemCollapsed当TreeView控件收缩完成时触发

08.ItemCollapsing当TreeView控件收缩开始时触发

09.ItemExpanded当TreeView控件展开后触发

10.ItemExpanding当TreeView控件展开之前触发

11.ItemPopulate当TreeView控件第一次展开时触发

12.RightClicked按下鼠标右键时触发

13.RightDoubleClicked在控件中双击鼠标右键时触发

14.SelectionChangedTreeView项目被选中后触发

15.SelectionChangingTreeView当前项目改变之前触发

16.Sort两个项目为排序进行比较时触发

-------------------------------------------------------------------------------

9.列表浏览控件的事件

事件名称事件触发时机

01.BeginDrag按下鼠标左键开始拖动时触发

02.BeginLabelEdit编辑ListView选中的项标签时触发

03.BeginRightDrag按下鼠标右键开始拖动时触发

04.ColumnClicked在控件中鼠标左键单击列标题时触发

05.DeleteAllItems所有项被删除时触发

06.DeleteItemListView项被删除时触发

07.DoubleClicked双击鼠标左键时触发

08.EndLabelEdit对ListView的项标签结束编辑时触发

09.InsertItem为ListView插入项时触发

10.ItemChanged控件中当前项目改变后触发

11.ItemChanging控件中当前项目改变前触发

12.key用户按下键时触发

13.RightClicked按下鼠标右键时触发

14.RightDoubleClicked在控件中双击鼠标右键时触发

15.Sort两个项目为排序进行比较时触发

----------------------------------------------------------------------------------

10.Tab页控件的事件

事件名称事件触发时机

01.DoubleClicked双击鼠标左键时触发

02.Key用户按下键时触发

03.RightClicked按下鼠标右键时触发

04.RightDoubleClicked在控件中双击鼠标右键时触发

05.SelectionChangingTab控件当前页改变之前触发

06.SelectionChangedTab控件当前页改变后触发

-----------------------------------------------------------------------------------

11.OLE控件的事件

事件名称事件触发时机

01.Close当OLE控件的服务器关闭时触发

02.Datachange服务器应用数据改变时触发

03.DoubleClicked在控件内双击鼠标左键时触发

04.Error当OLE控件操作出现错误时触发

05.ExternalExceptionOLE服务器自动执行处理以外的操作时触发

06.PropertyChangedOLE控件改变对象后触发

07.PropertyRequestEditOLE控件改变对象时触发

08.Rename当服务器中对象改名时触发

09.Save服务器写数据时触发

10.ViewChange服务器进行预览时触发

-------------------------------------------------------------------------------------

12.菜单事件

菜单对象的事件比较简单,只有两个Clicked事件和Selected事件。

Clicked事件:

在某菜单上单击鼠标左键时触发。

Selected事件:

光标移入菜单条时触发。

13.用户自定义事件

这种东东目前正在研究,太多了,慢慢来

转资料一份

PB中自定义事件ID含义

EventID含义内容浅析,

单选或多选按钮消息(前缀:

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关闭下拉式数据窗口。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 水产渔业

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1