修改")
//可在此调用om_1.setitemdisable(itemorder)函数disable某
菜单项。
om_1.popupmenu(this.x+this.pointerx(),
this.y+this.pointery())
3、 给dw_1定义用户事件ue_item1、ue_item2、ue_item3
及 ue_item4。
事件ue_item1脚本:
dw_1.retrieve()
事件ue_item2脚本:
long newrow
newrow=dw_1.insertrow(0)
dw_1.scrolltorow(newrow)
事件ue_item3脚本:
dw_1.deleterow(0)
事件ue_item4脚本:
dw_1.update()
---- 这样,只要用户单击dw_1弹出的右键菜单,就可完成对dw_1的插入、删除、修改等功能。
三、 推广为全程函数
---- 如果应用中有许多地方要用此功能,我们可以把dw_1的rbuttondown事件脚本改造成一个全程函数。
---- 1、将变量om_1定义为global变量:
---- m_popup om_1
---- 2、定义一个全程函数
---- pupmenu(powerobject sender,string itemstring,integer x,integer y) 返回值Null。其中参数sender为被右击的对象,itemstring为弹出菜单的菜单项字符串,x、y为菜单弹出的坐标位置。
脚本如下:
if not isvalid(om_1) then
om_1= CREATE m_popup
end if
om_1.anyobject=sender
om_1.setmenuitem(itemstring)
sender.triggerevent("ue_beforepop")
//激活sender用户事件。
om_1.popupmenu(x,y)
这样,上述dw_1的rbuttondown事件脚本就可改写为:
string items="刷新
关键词:用PB做一个通用右键菜单