EditorGUI.EnumPopup 枚举弹出菜单

static function EnumPopup (position : Rect, selected : System.Enum, style : GUIStyle = EditorStyles.popup) : System.Enum
static function EnumPopup (position : Rect, label : string, selected : System.Enum, style : GUIStyle = EditorStyles.popup) : System.Enum
static function EnumPopup (position : Rect, label : GUIContent, selected : System.Enum, style : GUIStyle = EditorStyles.popup) : System.Enum

Parameters参数

Returns

System.Enum - The enum option that has been selected by the user.

系统枚举 - 用户选择的枚举选项

Description描述

Make an enum popup selection field.

制作一个枚举弹出选择字段(弹出选择菜单)。

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

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

EditorGUI.EnumPopup 枚举弹出菜单

Enum Popup in an Editor Window.
编辑器中的枚举弹出菜单。

// Shows info of a GameObject depending on the selected option

//根据选择选项的显示游戏物体的信息

enum OPTIONS {

	Position = 0,

	Rotation = 1,

	Scale = 2,

}



class EditorGUIEnumPopup extends EditorWindow {



	var display : OPTIONS = OPTIONS.Position;



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

	static function Init() {

		var window = GetWindow(EditorGUIEnumPopup);

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

		window.Show();

	}



	function OnGUI() {

		var selectedObj : Transform = Selection.activeTransform;

		display = EditorGUI.EnumPopup(

			Rect(3,3,position.width - 6, 15),

			"Show:",

			display);

		EditorGUI.LabelField(Rect(0, 20, position.width,15),

		"Name:",

		selectedObj ? selectedObj.name : "Select an Object");

		if(selectedObj) {

			switch(display) {

				case OPTIONS.Position:

					EditorGUI.LabelField(Rect(0, 40, position.width,15),

						"Position:",

						selectedObj.position.ToString());

				break;



				case OPTIONS.Rotation:

					EditorGUI.LabelField(Rect(0, 40, position.width,15),

						"Rotation:",

						selectedObj.rotation.ToString());

				break;



				case OPTIONS.Scale:

					EditorGUI.LabelField(Rect(0, 40, position.width,15),

						"Scale:",

						selectedObj.localScale.ToString());

				break;



				default:

					Debug.LogError("Unrecognized Option");

				break;

			}

		}

		if(GUI.Button(Rect(3,position.height - 25, position.width - 6, 24),"Close"))

			this.Close();

	}

}
Page last updated: 2011-6-22