2011-02-02 5 views
0

자바 스크립트에서 마우스 오른쪽 버튼을 클릭하는 것 외에도 플렉스 컨텍스트 메뉴에서 하위 메뉴를 만드는 방법이 있습니까?플렉스 컨텍스트 메뉴에서 서브 메뉴 만들기

감사합니다,


안녕 프랭크,

은 예, 상황에 맞는 메뉴에서 하위 메뉴를 만들려고합니다. 여기서 나를 도울 수 있니?

감사합니다,


안녕 프랭크,

나는하지 데이터 그리드에 대한 응용 프로그램에 대한 컨텍스트 메뉴가 필요합니다.

내 최초의 질문에

문구를 "자바 스크립트에서 마우스 오른쪽 버튼을 클릭 중지 이외의"

는 "기능으로 전화, HTML에서 마우스 오른쪽 버튼을 클릭 잡을 자바 스크립트 함수를 호출 JS 이상"을 의미합니다.

지정한 프로젝트가 위의 절차를 수행합니다. 나는 이것을 사용하고 싶지 않다.

절차. 플렉스 컨텍스트 메뉴에서 하위 메뉴를 구현하는 다른 방법이 있습니까? 그렇다면 당신은

..

감사합니다, 아빈

+0

을 읽고 당신은 응용 프로그램 또는 예 : 데이터 그리드에 대한 컨텍스트 메뉴를 필요합니까? Datagrid에서 이미 다중 레벨 컨텍스트 메뉴를 구현하고 있습니다. – Frank

+0

안녕하세요 프랭크, DataGrid 용이 아닌 애플리케이션 용 컨텍스트 메뉴가 필요합니다. "javascript에서 오른쪽 클릭을 중지하는 것 이외의 문구는" "html로 마우스 오른쪽 버튼을 클릭하고 javascript 함수를 호출하고 js를 통해 함수를 호출하는 것을 의미합니다." 위의 절차를 수행 지정한 프로젝트는. 나는이 절차를 사용하지 않습니다. 플렉스 상황에 맞는 메뉴에서 하위 메뉴를 달성하기위한 다른 방법이 있나요. 그렇다면 당신이 말해 주 시겠어요. . 응답에 대한 감사합니다, 아빈 – Arvind

답변

0

예,이 말해 주 시겠어요. 자바 스크립트에서 마우스 오른쪽 버튼을 클릭을 막는 것보다

기타 : 정확히 이것으로 무엇을 의미하는지

모르겠어요. 당신이 하위 메뉴에서 항목을 만들려면

하지만,이 작업을 수행 :

//Instance of my own class 
private var myContext:myContextMenu = new myContextMenu(); 
application.contextMenu = myContext.myContextMenu; 

//Here is the Class: 
package com.my.components 
{ 
    /* //////////////////////////////////////////// 
    ///// My Context Menü ///////////////////// 
    /////////////////////////////////////////////// 

    ///////////////////////////////////////////////////////////////////////////////// 
    //to use:                  // 
    // private var myContext:MyContextMenu = new MyContextMenu();     // 
    // init() in creationComplete             // 
    // application.contextMenu = myContext.myContextMenu;       // 
    ////////////////////////////////////////////////////////////////////////////// */ 


    import flash.display.Sprite; 
    import flash.events.ContextMenuEvent; 
    import flash.net.URLRequest; 
    import flash.net.navigateToURL; 
    import flash.text.TextField; 
    import flash.ui.ContextMenu; 
    import flash.ui.ContextMenuBuiltInItems; 
    import flash.ui.ContextMenuItem; 

    public class MyContextMenu extends Sprite 
    { 

     public var myContextMenu:ContextMenu; 
     private var menuLabel:String = String.fromCharCode(169)+" My Company GmbH"; 

     public function MyContextMenu() 
     { 
      myContextMenu = new ContextMenu; 
      removeDefaultItems(); 
      addCustomItems(); 
      myContextMenu.addEventListener(ContextMenuEvent.MENU_SELECT, menuSelectHandler); 

      super(); 
     } 

     private function removeDefaultItems():void 
     { 
      myContextMenu.hideBuiltInItems(); 
      var defaultItems:ContextMenuBuiltInItems = myContextMenu.builtInItems; 
      defaultItems.print = true; 
     } 

     private function addCustomItems():void 
     { 
      var item:ContextMenuItem = new ContextMenuItem(menuLabel); 
      myContextMenu.customItems.push(item); 
      item.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT,menuItemSelectHandler); 
     } 

     private function menuSelectHandler(event:ContextMenuEvent):void 
     { 
     } 

     private function menuItemSelectHandler(event:ContextMenuEvent):void 
     { 
      navigateToURL(new URLRequest('http://www.my-company.de')); 
     } 

     private function createLabel():TextField 
     { 
      var txtField:TextField = new TextField(); 
      //txtField.text = textLabel; 
      txtField.text = "RightClickHere"; 
      return txtField; 
     } 
    } 
} 

재미

편집 유무 : 흥미로운 프로젝트 here 있습니다. 그들은 HTML에서 오른쪽 클릭을 잡아 자바 스크립트 함수를 호출하고 js를 통해 함수를 호출합니다.

FP 또는 NativeMenu APi의 제한 사항은 수준 컨텍스트 메뉴에서만 허용됩니다. here

프랭크

+0

안녕하세요, 감사합니다 내 요구 사항이 같은 것입니다 항목 1 -..> Item1a -> Item1b -> Item1c 항목 2 -> Item2a -> Item2b -> Item2c 항목 3 -> Item3a -> Item3b -> Item3c – Arvind

+0

@Arvind 추가하려는 정보가 있으면 Frank의 대답이 아닌 원래 질문을 편집하십시오. 건배! –

+0

Arvid, 컨텍스트 메뉴에서 하위 메뉴를 만들고 싶습니까? 나는 이것이 확실한 집회라고 생각한다. 하지만 나에게 답을 주겠다. 문맥 메뉴에서 부 메뉴를 만들고 싶니? – Frank

관련 문제