【问题标题】:Add button to Unity3d editor将按钮添加到 Unity3d 编辑器
【发布时间】:2016-05-14 22:32:43
【问题描述】:

在 Unity3D 中,我可以在编辑器中显示一个属性字段,只需向类添加一个公共属性即可。是否可以在此字段旁边添加一个按钮,以打开填充该字段的文件浏览器?

我找到了EditorUtility.OpenFilePanel,但是如何在编辑器中添加一个按钮来调用该方法? (我不是指顶部工具栏中的菜单,如该页面上的示例代码所示)

谢谢

【问题讨论】:

    标签: c# button unity3d editor game-engine


    【解决方案1】:

    当您选择要引用的游戏对象时,GUILayout.Button() 方法会在检查器中显示一个按钮。

    例如...此代码 (customButton.cs) 在调用其 OpenDialog() 方法的脚本“OpenFileButtonScript.cs”中向检查器添加一个按钮。

    using UnityEngine;
    using System.Collections;
    using UnityEditor;
    
    [CustomEditor(typeof(OpenFileButtonScript))]
    public class customButton : Editor
    {
        public override void OnInspectorGUI()
        {
            DrawDefaultInspector();
    
            OpenFileButtonScript myScript = (OpenFileButtonScript)target;
            if (GUILayout.Button("Open File"))
            {
                myScript.OpenDialog();
            }
        }
    
    }
    

    这是“OpenFileButtonScript.cs”脚本:

    using UnityEngine;
    using System.Collections;
    using UnityEditor;
    
    public class OpenFileButtonScript : MonoBehaviour {
    
        public string path;
    
        public void OpenDialog()
        {
            path = EditorUtility.OpenFilePanel(
                        "Open file",
                        "",
                        "*");
        }
    }
    

    我希望这可以帮助你。有关按钮的更多信息,请参阅videotutorial

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-03-01
      • 2021-05-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多