鼠标右键弹出菜单中,有和业务关联的菜单项,这些菜单项是完全自定义的.
注:鼠标点在不同的行,弹出菜单内容是不一样的;如果点在标题区或下方的空白区,菜单内容是disable的.





1.源码分析:所有秘密全部在OnEvent事件中:
function OnEvent(id, Event, p1, p2, p3, p4)
{
  if(Event=="MenuBeforePopup") {
    var hLock = AF.func("EventLock", Event);  //ppapi 加锁
    var name1 = "时髦男帽";
    var name2 = "时髦头巾";
    var enable = "true";
    if(p1 != "-1") {  //右击在某行
      name1 = "客户 " + AF.func("getCellText", p1 + "\r\n CustomerID") + " 的" + name1;
      name2 = name2 + ", 产地:" + AF.func("getCellText", p1 + "\r\n Country");
    }
    else
      enable = "false";
    var menu = "id=4001; text=" +name1+ "; icon=treelist/buttons.zip#301.ico; detail=夏季时装,优惠直销,尺寸齐全;enabled=" +enable+ "\r\n";
    menu += "id=4002; text=" +name2+ "; icon=treelist/buttons.zip#302.ico; detail=夏季时装,优惠直销;enable=" + enable;
    AF.func("AddMenu", menu);
    AF.func("EventUnLock", hLock);  //ppapi 解锁
  }
  else if(Event=="MenuClicked") {
    AF.func("MessageBoxFloat", "触发了js事件!\\r\\n\\r\\n自定义功能号(id):" + p1 + "\\r\\n\\r\\n行:" +p2+ ",  列:"+p3);
  }
}