自定义编辑器 窗口的开发

窗口开发的流程

                      1、引用UnityEditor命名空间

                      2、继承EditorWindow

                      3、创建一个窗口

                      4、利用OnEnable和OnDisable做初始化和关闭时的清理工作

                      5、利用OnGUI方法绘制一些我们需要的信息

          基本的声明周期函数都有,举几个其他的函数

                1、void OnHierarchyChange()   :当Hirearchy面板上的物体发生改变时执行 

                                                                                   一般用来游戏物体的改名 、添加、删除

                2、void OnProjectChange()  :  当Project面板里的资源发生改变时执行

                                                                               一般是资源的导入,删除等等

                3、void OnSelectionChange()   :当选中的物体发生改变时,执行该方法

        提示信息

                 ShowNotification(new GUIContent(“信息”))   :  显示一个提示性的信息   (一定时间后会自动消失)

                      RemoveNotification()   直接关闭提示信息

       强制设置当前选中的对象

                Selection . activeGameObject = GameObject . Find( " " );   注意: 一般只返回Inspactor界面可修改的物体

                                 小用处 : 当 在updaye 函数里写入的话  会强制性的一直选中查找的一个物体

       窗口图片:

                   LessonWindow window = EditorWindow . GetWindow <LesssonWindow>(false,"我的窗口“,true);

                                     LessonWindow  自己写的的类名  我写在[MenuItem( "  / ")] 特性下,在静态方法里使用了这个方法

                                                                    这样可以在界面上方选项直接创建该类的窗口

                              window.minSize = new Vector2(400, 500);//设置窗口的最小尺寸,宽和高
                              window.maxSize = new Vector2(800, 700);//设置窗口的最大尺寸,宽和高      

                             maximized  :设置窗口最大化将使Unity编辑器和Unity屏幕一样大,如果窗口没有被连接,这个值将永远是false,                                                    并且设置它将没有效果(是否最大化,要注意窗口是否浮动)

                                      例如 :EditorGUILayout. Toggle("最大化",maximized) 

                               window.Show();  窗口显示

                               window . Focus()   自动对焦到该窗口

  忘了啥用了,先记一下

                  EditorWindow. focusedWindow : 当前选中的窗口

                 Editorwindow. mouseOverWindow : 鼠标当前悬停的窗口,注意,有可能是null

                  

猜你喜欢

转载自blog.csdn.net/j_sbytc3/article/details/81460408