EditorGUILayout.EnumPopup 枚举弹出选择菜单

http://www.unity蛮牛.com/thread-25490-1-1.html

http://www.unity蛮牛.com/m/Script/EditorGUILayout.EnumPopup.html

EditorGUILayout.EnumPopup 枚举弹出选择菜单

 

static function EnumPopup (selected : System.Enum, params options : GUILayoutOption[]) : System.Enum
static function EnumPopup (selected : System.Enum, style : GUIStyle, params options : GUILayoutOption[]) : System.Enum
static function EnumPopup (label : string, selected : System.Enum, params options : GUILayoutOption[]) : System.Enum
static function EnumPopup (label : string, selected : System.Enum, style : GUIStyle, params options : GUILayoutOption[]) : System.Enum
static function EnumPopup (label : GUIContent, selected : System.Enum, params options : GUILayoutOption[]) : System.Enum
static function EnumPopup (label : GUIContent, selected : System.Enum, style : GUIStyle, params options : GUILayoutOption[]) : System.Enum

Parameters参数

  • label
    Optional label in front of the field. // 字段前面的可选标签。
  • selected
    The enum option the field shows. 
    枚举显示字段选项
  • style
    Optional GUIStyle. // 可选样式
  • options
    An optional list of layout options that specify extra layouting properties. Any values passed in here will override settings defined by the style. See Also: GUILayout.Width, GUILayout.Height, GUILayout.MinWidth,GUILayout.MaxWidth, GUILayout.MinHeight, GUILayout.MaxHeight, GUILayout.ExpandWidth, GUILayout.ExpandHeight
    指定额外布局属性的可选列表。这里传递任意值,将覆盖样式定义的设置。

Returns

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

返回System.Enum,用户选择的枚举选项。

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.

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

技术文章

Create a primitive depending on the option selected. 
创建一个基本物体,取决于用户选择的选项 

// Creates an instance of a primitive depending on the option selected by the user.
//创建一个基本物体的实例,取决于用户选择的选项
enum OPTIONS {
    CUBE = 0,
    SPHERE = 1,
    PLANE = 2
}
class EditorGUILayoutEnumPopup extends EditorWindow {
    var op : OPTIONS;

    @MenuItem("Examples/Editor GUILayout Enum Popup usage")
    static function Init() {
        var window = GetWindow(EditorGUILayoutEnumPopup);
        window.Show();
    }
    function OnGUI() {
        op = EditorGUILayout.EnumPopup("Primitive to create:", op);
        if(GUILayout.Button("Create"))
            InstantiatePrimitive(op);
    }
    function InstantiatePrimitive(op : OPTIONS) {
        switch (op) {
            case OPTIONS.CUBE:
                var cube : GameObject = GameObject.CreatePrimitive(PrimitiveType.Cube);
                cube.transform.position = Vector3.zero;
                break;
            case OPTIONS.SPHERE:
                var sphere : GameObject = GameObject.CreatePrimitive(PrimitiveType.Sphere);
                sphere.transform.position = Vector3.zero;
                break;
            case OPTIONS.PLANE:
                var plane : GameObject = GameObject.CreatePrimitive(PrimitiveType.Plane);
                plane.transform.position = Vector3.zero;
                break;
            default:
                Debug.LogError("Unrecognized Option");
                break;
        }
    }
}

 

 
文章来自:http://www.cnblogs.com/123ing/p/4123664.html
© 2021 jiaocheng.bubufx.com  联系我们
ICP备案:鲁ICP备09046678号-3