ScriptableWizard

class in UnityEditor

/

Inherits from:EditorWindow

Switch to Manual

Description

从此类派生以创建编辑器向导。

编辑器向导通常使用菜单项打开。

// Creates a simple wizard that lets you create a Light GameObject
// or if the user clicks in "Apply", it will set the color of the currently
// object selected to red

using UnityEditor; using UnityEngine;

public class WizardCreateLight : ScriptableWizard { public float range = 500; public Color color = Color.red;

[MenuItem("GameObject/Create Light Wizard")] static void CreateWizard() { ScriptableWizard.DisplayWizard<WizardCreateLight>("Create Light", "Create", "Apply"); //If you don't want to use the secondary button simply leave it out: //ScriptableWizard.DisplayWizard<WizardCreateLight>("Create Light", "Create"); }

void OnWizardCreate() { GameObject go = new GameObject("New Light"); Light lt = go.AddComponent<Light>(); lt.range = range; lt.color = color; }

void OnWizardUpdate() { helpString = "Please set the color of the light!"; }

// When the user presses the "Apply" button OnWizardOtherButton is called. void OnWizardOtherButton() { if (Selection.activeTransform != null) { Light lt = Selection.activeTransform.GetComponent<Light>();

if (lt != null) { lt.color = Color.red; } } } }

Variables

createButtonName允许您设置向导的 Create 按钮上显示的文本。
errorString允许您设置向导的错误文本。
helpString允许您设置向导的帮助文本。
isValid允许您启用向导 Create 按钮,或者将其禁用,从而使用户无法点击。
otherButtonName允许您设置向导的可选 Other 按钮上显示的文本。忽略此参数将不显示该按钮。

Protected Functions

DrawWizardGUI当 ScriptableWizard 需要更新其 GUI 时,将调用此函数以绘制内容。

Static Functions

DisplayWizard创建一个向导。

Messages

OnWizardCreate当用户单击 Create 按钮时,将调用此函数。
OnWizardOtherButton允许您在用户单击 Others 按钮时提供操作。
OnWizardUpdate在向导打开或者用户在向导中更改内容时,将调用此函数。

Inherited members

Static Variables

focusedWindow当前已获得键盘焦点的 EditorWindow。(只读)
mouseOverWindow当前在鼠标光标下的 EditorWindow。(只读)

Variables

autoRepaintOnSceneChangeDoes the window automatically repaint whenever the Scene has changed?
maximized此窗口是否已最大化?
maxSize此窗口的最大大小。
minSize此窗口的最小大小。
position窗口在屏幕空间中的理想位置。
titleContent用于绘制 EditorWindow 标题的 GUIContent。
wantsMouseEnterLeaveWindow检查是否已在此编辑器窗口的 GUI 中收到 MouseEnterWindow 和 MouseLeaveWindow 事件。
wantsMouseMove检查是否已在此编辑器窗口的 GUI 中收到 MouseMove 事件。
hideFlagsShould the object be hidden, saved with the Scene or modifiable by the user?
name对象的名称。

Public Functions

BeginWindows标记所有弹出窗口的开始区域。
Close关闭编辑器窗口。
EndWindows关闭由 EditorWindow.BeginWindows 开始的窗口组。
Focus将键盘焦点移动到另一个 EditorWindow。
RemoveNotification停止显示通知消息。
Repaint重绘窗口。
SendEvent将事件发送到窗口。
Show显示 EditorWindow 窗口。
ShowAsDropDown显示包含下拉菜单和样式的窗口。
ShowAuxWindow在辅助窗口中显示编辑器窗口。
ShowNotification显示通知消息。
ShowPopup使用弹出式框架显示编辑器窗口。
ShowUtility将 EditorWindow 显示为浮动实用程序窗口。
GetInstanceID返回对象的实例 ID。
ToString返回 GameObject 的名称。

Static Functions

FocusWindowIfItsOpen聚焦发现的第一个指定类型的 EditorWindow(如果已打开)。
GetWindow返回当前屏幕上第一个 t 类型的 EditorWindow。
GetWindowWithRect返回当前屏幕上第一个 t 类型的 EditorWindow。
Destroy删除 GameObject、组件或资源。
DestroyImmediate立即销毁对象 /obj/。强烈建议您改用 Destroy。
DontDestroyOnLoadDo not destroy the target Object when loading a new Scene.
FindObjectOfType返回第一个类型为 type 的已加载的激活对象。
FindObjectsOfType返回所有类型为 type 的已加载的激活对象的列表。
Instantiate克隆 original 对象并返回克隆对象。
CreateInstance创建脚本化对象的实例。

Operators

bool该对象是否存在?
operator !=比较两个对象是否引用不同的对象。
operator ==比较两个对象引用,判断它们是否引用同一个对象。

Messages

Awake在新窗口打开时调用。
OnDestroy调用 OnDestroy 以关闭 EditorWindow 窗口。
OnFocus在窗口获得键盘焦点时调用。
OnGUI在此处实现您自己的 Editor GUI。
OnHierarchyChange处理程序,用于在层级视图中的对象或对象组发生更改时发送的消息。
OnInspectorUpdateOnInspectorUpdate 以每秒 10 帧的速度调用,以便检视面板有机会进行更新。
OnLostFocus在窗口失去键盘焦点时调用。
OnProjectChange处理程序,用于在项目状态发生更改时发送的消息。
OnSelectionChange每当选择发生更改时调用。
Update在所有可见窗口上每秒调用多次。
Awake当 ScriptableObject 脚本启动时调用此函数。
OnDestroy当脚本化对象将销毁时调用此函数。
OnDisable当脚本化对象超出范围时调用此函数。
OnEnable当对象加载时调用此函数。