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