PB中TriggerEvent和DYNAMIC用法

Eddy 发布于2011-3-7 11:45:46 分类: 程序设计 已浏览loading 网友评论0条 我要评论

DYNAMIC是指定函数或事件的一个动态调用,即当你指定一个动态调用时,函数和事件在编译时不一定要存在。你告诉编译器:相信我,此处在运行时一定会有一个合适的函数或事件。对于动态调用,PowerBuilder等到执行时才寻找函数或事件。这就给了你更大的编程灵活性。

pb函数TriggerEvent详解
TriggerEvent
函数作用:触发指定对象的指定事件,并且立即执行该事件中的脚本。注意该函数和PostEvent的区别。PostEvent不是立即执行,TriggerEvent是立即执行触发事件的脚本。
函数语法:objectname.TriggerEvent ( event {, word, long } )
z objectname:PB中任何对象或者控件,只要有可以触发的事件就可以。
z event:要触发的事件。可以是枚举类型或者String类型。PB提供的事件可以使用枚举或者String类型来表示,比如Clicked!或者‘Clicked’都可以代表Clicked事件;自定义的用户事件只能使用String来表示。需要注意的是,这里的事件应该提供了脚本。
z word:该参数不是必需的。当需要传递数据给被触发的事件时使用word和long参数。这两个参数都可以传递long类型的数据,但是参数long还可以传递string类型的数据,而该参数仅能传递long类型的。如果使用了该参数,在被触发的事件中使用Message.WordParm接收传递过去的数据。如果不使用该参数传递数据而是使用参数long进行传递,则将该参数设置为0。
z long:该参数也不是必须的,用来传递long或者string类型的数据。使用Message.LongParm接收传递的数据。当传递string类型的数据时,对象Message.LongParm中保存的是所传数据的存储地址,必须使用string(XX,’address’)来读取该地址中的string类型数据。
返回值:Integer类型。如果返回1,表示该函数执行成功;如果指定事件中没有脚本或者

函数执行错误,则返回-1。当任意参数为Null时,函数返回Null。
代码实例:
例子1,触发缺省事件:
cb_1.TriggerEvent(Clicked!)
等价于:
cb_1.TriggerEvent(“Clicked”)
例子2,触发用户自定义事件:
w_main.TriggerEvent(“ue_open”)
例子3,传递信息和接收信息:
w_main.TriggerEvent(“ue_open”,0,’test’)
在用户自定义事件ue_open中接收数据:
string ls_msg
ls_msg = String(Message.LongParm,’address’)
例子4,传递long数据:
w_main.TriggerEvent(‘ue_open’,100,0)
在用户自定义事件ue_open中接收数据:
long ll_msg
ll_msg = Message.WordParm

已经有(0)位网友发表了评论,你也评一评吧!
原创文章如转载,请注明:转载自Eddy Blog
原文地址:http://www.rrgod.com/program/730.html     欢迎订阅Eddy Blog

关于 PB  TriggerEvent  DYNAMIC  的相关文章

记住我的信息,下次不用再输入 欢迎给Eddy Blog留言