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参数

  • position
    Rectangle on the screen to use for the field.
    屏幕上的矩形区域    
  • label
    Optional label in front of the field.
    显示在该区域前面的可选择标签    
  • selectedIndex
    The index of the option the field shows.
    选项的索引值    
  • displayedOptions
    An array with the options shown in the popup.
    显示在弹出菜单中的选项数组    
  • style
    Optional GUIStyle. //  可选的GUIStyle

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]);}}


,