zoukankan      html  css  js  c++  java
  • 自定义右键菜单类

    自定义右键菜单类

    /**
     *
     * *---------------------------*
     * |  *** 自定义右键菜单类 ***  |
     * *---------------------------*
     *
     * 编辑修改收录:fengzi(疯子、wu341、wgq341)
     *
     * 不会写代码,我是代码搬运工。
     *
     * 联系方式:QQ(493712833)。
     *
     * 随   笔: https://www.cnblogs.com/fengziwu/
     *
     * 版权协议:请自觉遵守LGPL协议,欢迎修改、复制、转载、传播给更多需要的人。
     * 免责声明:任何因使用此软件导致的纠纷与软件/程序开发者无关。
     * 日   期: 2019.05.08
     *
     * * ------------------ Example -------------------- *
     *
     * 自定义右键菜单类
     * 自定义菜单项不得超过15个,每个标题必须至少包含一个可见字符。
     * 标题字符不能超过100个,并且开头的空白字符会被忽略。
     * 与任何内置菜单项相同的标题将被忽略。
     import fengzi.menu.Menu;
     var menu:Menu = new Menu(this);
     menu.buildLinkMenu("as3.0 MENU                                第一项",true);
     menu.buildLinkMenu("未启用为灰色不可点击状态   第二项",false);
     menu.buildLinkMenu("打开 11AIR闪客社区                第三项",true,true,link);
     function link():void
      {
        navigateToURL(new URLRequest("http://www.11ria.com/") , "_blank");
      }
     */
    
    package fengzi.menu
    {
    
    	import flash.events.ContextMenuEvent;
    	import flash.ui.ContextMenu;
    	import flash.ui.ContextMenuBuiltInItems;
    	import flash.ui.ContextMenuItem;
    	public class Menu
    	{
    		private var menu:ContextMenu=new ContextMenu();
    
    		/**
    		        * Menu     构造
    		        * @param   object     对象(this)
    		        **/
    		public function Menu(object:Object):void
    		{
    			//隐藏默认的菜单项
    			menu.hideBuiltInItems();
    			//应用菜单项
    			object.contextMenu = menu;
    		}
    
    		/**
    		        * buildLinkMenu     菜单项
    		        * @param            title              菜单项标题名称
    		        * @param            ISenabled          菜单项是否启用(默认true启用,false未启用为灰色不可点击状态)
    		        * @param            ISeparatorBefore   菜单项上方是否显示分隔条(默认false不显示)
    		        * @param            Event              鼠标点击事件触动的方法(触动此方法,ISenabled设置为true)
    		        **/
    
    		public function buildLinkMenu(title:String,ISenabled:Boolean=true,ISeparatorBefore:Boolean=false,Event:Function=null):void
    		{
    
    			var item:ContextMenuItem = new ContextMenuItem(title,ISenabled,ISeparatorBefore);
    			//在菜单数组中添加一个选项
    			menu.customItems.push(item);
    			//菜单项是否接收鼠标点击;
    			item.enabled = ISenabled;
    			//菜单项上方是否显示分隔条
    			item.separatorBefore = ISeparatorBefore;
    			//触动的事件
    			if (Event!=null)
    			{
    				item.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT,mouseRelease);
    
    			}
    
    			function mouseRelease(event:ContextMenuEvent):void
    			{
    				Event();
    			}
    
    		}
    
    
    
    
    	}
    }
    

      

  • 相关阅读:
    OK335x mksd.sh hacking
    Qt jsoncpp 对象拷贝、删除、函数调用 demo
    OK335xS 256M 512M nand flash make ubifs hacking
    Qt QScrollArea and layout in code
    JsonCpp Documentation
    Qt 4.8.5 jsoncpp lib
    Oracle数据库生成UUID
    freemarker得到数组的长度
    FreeMarker中if标签内的判断条件
    freemarker语法
  • 原文地址:https://www.cnblogs.com/fengziwu/p/13702631.html
Copyright © 2011-2022 走看看