UEDL11-1——编辑器默认窗口相关
UEDL11-1——编辑器默认窗口相关
本章代码关键字
1 | EditorUtility.DisplayDialog() //显示提示窗口 |
显示提示窗口
EditorUtility.DisplayDialog()
该方法会弹出一个提示窗口,
常用于用户二次确认某个逻辑,该方法会返回一个bool
值,返回用户是否点击了确认按钮,如果直接关闭提示窗口就会返回false
- 参数一:窗口标题
- 参数二:窗口显示消息
- 参数三:确认键上显示的内容
- 返回值:是否点击了确认按钮
注意:提示窗口显示会阻塞逻辑,即直到点击确认按钮或者关闭窗口前,编辑器的逻辑都会被阻塞
1 | private void OnGUI() |
显示效果:
输出内容:
显示三键提示面板
EditorUtility.DisplayDialogComplex()
该方法会弹出一个有三个按钮的提示窗口
-
参数一:窗口标题
-
参数二:窗口显示消息
-
参数三:按钮1上显示的内容
-
参数四:按钮3上显示的内容 (注意,是按钮3,不是2,以及,如果直接关闭了该窗口,则默认返回点击了按钮3的值,因此它常用于做关闭键)
-
参数五:按钮2上显示的内容 (注意,是按钮2,不是3)
-
返回值:返回点击的按钮对应的数字,对应关系为:
- 0:按钮1按下
- 1:按钮3按下(如果直接关闭了该窗口,则默认返回1,因此它常用于处理直接关闭窗口时执行的逻辑)
- 2:按钮2按下
注意:提示窗口显示会阻塞逻辑,即直到点击某个按钮前,编辑器的逻辑都会被阻塞
1 | private void OnGUI() |
显示效果:
输出内容:
进度条相关
- 显示进度条:
EditorUtility.DisplayProgressBar("进度条", "显示信息", 进度值0~1)
- 关闭进度条:
EditorUtility.ClearProgressBar()
注意:进度条窗口不会卡逻辑,但是需要配合关闭进度条使用
1 | private void OnGUI() |
显示效果:
如果要更新进度条窗口上显示的角度等其他消息,重复执行该方法并传入不同的参数即可,
假设要模拟一个进度条缓慢增长:
1 | private float value; |
显示效果(多次点击后):
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 文KRIFE齐的博客!