官方文档:EditorWindow - Unity 脚本 API
EditorWindow 继承自 ScriptableObject
一、变量
1.静态变量
变量名 | 官方解释 | 使用场景 |
focusWindow | 当前已获得键盘焦点的 EditorWindow。(只读) | |
mouseOverWindow | 当前在鼠标光标下的 EditorWindow。(只读) |
2.变量
变量名 | 官方解释 | 使用场景 |
titleContent | 用于绘制 EditorWindow 标题的 GUIContent。 | |
position | 窗口在屏幕空间中的理想位置。 | |
maxSize | 窗口最大值 | |
minSize | 窗口最小值 | |
maximized | 此窗口是否已最大化? | |
rootVisualElement | 获取窗口层级视图的根视觉元素。 | |
hasFocus | 窗口是否被聚焦 | |
autoRepaintOnSceneChange | 窗口是否会在场景每次发生变化时自动重绘? | |
docked | Returns true if EditorWindow is docked. | |
hasUnsavedChanges | This property specifies whether the Editor prompts the user to save or discard unsaved changes before the window closes. | |
saveChangesMessage | The message that displays to the user if they are prompted to save | |
wantsLessLayoutEvents | Specifies whether a layout pass is performed before all user events (for example, EventType.MouseDown or [[EventType, KeyDown]]), or is only performed before repaint events. | |
wantsMouseEnterLeaveWindow | 检查是否已在此编辑器窗口的 GUI 中收到 MouseEnterWindow 和 MouseLeaveWindow 事件。 | |
wantsMouseMove | 检查是否已在此编辑器窗口的 GUI 中收到 MouseMove 事件。 |
二、方法
1.受保护的方法
变量名 | 官方解释 | 使用场景 |
OnBackingScaleFactorChanged | Called when the UI scaling for this EditorWindow is changed. |
2.静态方法
变量名 | 官方解释 | 使用场景 |
CreateWindow | 创建类型为 T 的 EditorWindow。 | |
FocusWindowIfItsOpen | 聚焦发现的第一个指定类型的 EditorWindow(如果已打开)。 | |
GetWindow | 返回当前屏幕上第一个 t 类型的 EditorWindow。 | |
GetWindowWithRect | 返回当前屏幕上第一个 t 类型的 EditorWindow。 | |
HasOpenInstances | 检查编辑器窗口是否已打开。 |
3.方法
BeginWindows | 标记所有弹出窗口的开始区域。 |
Close | 关闭编辑器窗口。 |
DiscardChanges | Discards unsaved changes to the contents of the window. |
EndWindows | 关闭由 EditorWindow.BeginWindows 开始的窗口组。 |
Focus | 将键盘焦点移动到另一个 EditorWindow。 |
GetExtraPaneTypes | 获取与窗口关联的额外窗格。 |
RemoveNotification | 停止显示通知消息。 |
Repaint | 重绘窗口。 |
SaveChanges | Performs a save action on the contents of the window. |
SendEvent | 将事件发送到窗口。 |
Show | 显示 EditorWindow 窗口。 |
ShowAsDropDown | 显示包含下拉菜单和样式的窗口。 |
ShowAuxWindow | 在辅助窗口中显示编辑器窗口。 |
ShowModal | 显示模态编辑器窗口。 |
ShowModalUtility | 将 EditorWindow 显示为浮动模态窗口。 |
ShowNotification | 显示通知消息。 |
ShowPopup | 使用弹出式框架显示编辑器窗口。 |
ShowUtility | 将 EditorWindow 显示为浮动实用程序窗口。 |
TryGetOverlay | Get an Overlay with matching ID from an EditorWindow canvas. |
三、消息(生命周期)
Awake | 在新窗口打开时调用。 |
CreateGUI | CreateGUI is called when the EditorWindow's rootVisualElement is ready to be populated. |
hasUnsavedChanges | This property specifies whether the Editor prompts the user to save or discard unsaved changes before the window closes. |
OnDestroy | 调用 OnDestroy 以关闭 EditorWindow 窗口。 |
OnFocus | 在窗口获得键盘焦点时调用。 |
OnGUI | 在此处实现您自己的 Editor GUI。 |
OnHierarchyChange | 处理程序,用于在层级视图中的对象或对象组发生更改时发送的消息。 |
OnInspectorUpdate | OnInspectorUpdate 以每秒 10 帧的速度调用,以便检视面板有机会进行更新。 |
OnLostFocus | 在窗口失去键盘焦点时调用。 |
OnProjectChange | 处理程序,用于在项目状态发生更改时发送的消息。 |
OnSelectionChange | 每当选择发生更改时调用。 |
saveChangesMessage | The message that displays to the user if they are prompted to save |
Update | 在所有可见窗口上每秒调用多次。 |