言語: 日本語
  • C#
  • JS
  • Boo

スクリプト言語

お好みのスクリプト言語を選択すると、サンプルコードがその言語で表示されます。

GenericMenu

Namespace: UnityEditor

Description

コンテキストメニューやドロップダウンメニューを作成するクラスです

// This example shows how to create a context menu inside a custom EditorWindow.

class MyWindow extends EditorWindow {
    
    @MenuItem("TestContextMenu/Open Window")
	static function Init () {
		var window = GetWindow (MyWindow);
		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();
            }
        }
    }
}

Functions

AddDisabledItem 選択不可のアイテムをメニューに追加します
AddItem メニューにアイテムを追加します
AddSeparator 区切り文字を追加します。空文字列(“”)の場合は区切り線になります
DropDown 今まで追加されたメニューをRect範囲内でドロップダウンメニューとして表示します
GetItemCount メニューに追加されているアイテムの数を取得します
ShowAsContext マウスの位置にコンテキストメニューを表示します