unity, inspector listview

inspector中实现列表框:

public override void OnInspectorGUI(){

        bool isDoubleClick=false;
        Event e = Event.current;
        if (e.type == EventType.mouseDown && Event.current.button == 0) {//left button down
            if(e.clickCount==2){//double click
                isDoubleClick=true;
            }    
        }//got isDoubleClick

        Rect scrollviewRect=EditorGUILayout.BeginVertical ();
        {
            scrollPosition = EditorGUILayout.BeginScrollView (scrollPosition, "box", GUILayout.Height (150));
            {
            
                //ref: http://answers.unity3d.com/questions/37223/how-do-i-center-a-gui-label.html
                //ref: http://iaimstar.iteye.com/blog/2222128
                GUIStyle _style = GUI.skin.GetStyle ("MenuItemMixed");

                m_selectIndex = GUILayout.SelectionGrid (m_selectIndex, list.ToArray (), 1, _style);
            }
            EditorGUILayout.EndScrollView ();
            if (scrollviewRect.Contains (e.mousePosition)) {
                if(isDoubleClick){
                   Debug.Log(list[m_selectIndex]);
                }
            }
        }
        EditorGUILayout.EndVertical ();

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值