EditorGUI.Popup 弹出菜单

static function Popup (position : Rect, selectedIndex : int, displayedOptions : string[], style : GUIStyle = EditorStyles.popup) : intf
static function Popup (position : Rect, selectedIndex : int, displayedOptions : GUIContent[], style : GUIStyle = EditorStyles.popup) : int
static function Popup (position : Rect, label : string, selectedIndex : int, displayedOptions : string[], style : GUIStyle = EditorStyles.popup) : int
static function Popup (position : Rect, label : GUIContent, selectedIndex : int, displayedOptions : GUIContent[], style : GUIStyle = EditorStyles.popup) : int

Parameters参数

Returns

int - The index of the option that has been selected by the user.

返回整数 - 用户选择的选项的索引值

Description描述

Make a generic popup selection field.

制作一个常用的弹出选择字段(弹出菜单)。

Takes the currently selected index as a parameter and returns the index selected by the user.

使用当前选择的索引作为参数并返回用户选择的索引值

Popup in and Editor Window.
在编辑器窗口中的弹出菜单。

// Adds a component to the selected GameObjects

//添加一个组件到选择的游戏物体

class EditorGUIPopup extends EditorWindow {

	var options : String[] = ["Rigidbody", "Box Collider", "Sphere Collider"];

	var index : int = 0;



	@MenuItem("Examples/Editor GUI Popup usage")

	static function Init() {

		var window = GetWindow(EditorGUIPopup);

		window.position = Rect(0,0,180,80);

		window.Show();

	}

	function OnGUI() {

		index = EditorGUI.Popup(

			Rect(0,0,position.width, 20),

			"Component:",

			index,

			options);



		if(GUI.Button(Rect(0,25,position.width, position.height - 26),"Add Component"))

			AddComponentToObjects();

	}

	function AddComponentToObjects() {

		if(!Selection.activeGameObject) {

			Debug.LogError("Please select at least one GameObject first");

			return;

		}

			for(var go : GameObject in Selection.gameObjects)

				go.AddComponent(options[index]);

		}

}
Page last updated: 2011-6-22