[cb]右键菜单 GenericMenu

自定义窗口中使用右键菜单:
image image 
// This example shows how to create a context menu inside a custom EditorWindow.

class MyGenericMenu extends EditorWindow {

    

    @MenuItem("Game/Open Window")

    static function Init () {

        var window = GetWindow (MyGenericMenu);

        window.position = Rect (50, 50, 250, 60);

        window.Show ();

    }



    function Callback (obj:Object) {

        Debug.Log ("Selected: " + obj);

    }



    function OnGUI() {

        var evt : Event = Event.current;

        var contextRect : Rect = new Rect (10, 10, 100, 100);

        

        if (evt.type == EventType.ContextClick)

        {

            var mousePos : Vector2 = evt.mousePosition;

            if (contextRect.Contains (mousePos))

            {

                // Now create the menu, add items and show it

                var menu : GenericMenu = new GenericMenu ();

                

                menu.AddItem (new GUIContent ("MenuItem1"), false, Callback, "item 1");

                menu.AddItem (new GUIContent ("MenuItem2"), false, Callback, "item 2");

                menu.AddSeparator ("");

                menu.AddItem (new GUIContent ("SubMenu/MenuItem3"), false, Callback, "item 3");

                

                menu.ShowAsContext ();



                evt.Use();

            }

        }

    }

}

你可能感兴趣的:(generic)