版本: Unity 6 (6000.0)
语言English
  • C#

GUIUtility.ExitGUI

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们无法接受所有提交,但我们会阅读用户提出的每个建议更改,并在适用时进行更新。

关闭

提交失败

由于某些原因,您的建议更改无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

声明

public static void ExitGUI();

描述

通过抛出一个 ExitGUIException,将 GUI 设置为一种状态,从而防止在 GUI 循环的剩余部分中评估所有后续的立即模式 GUI 函数。

在 Unity 的立即模式 GUI 系统中,GUI 循环通过在 Event 序列期间调用 GUI 方法来进行,并且这些方法根据 Event.type 执行操作。例如,当使用 GUILayout 时,控件将首先接收 EventType.Layout 事件以确定它们需要多少空间,然后稍后接收 EventType.Repaint 事件以实际绘制到为其分配的空间中。

在此序列中,预期控件 ID 在 GUI 循环期间处理的每个 Event 中都按相同的顺序请求和使用,并且事件循环不会重新进入自身。在可能违反这些假设的情况下使用 GUIUtility.ExitGUI,例如当某些值的更改可能改变接下来显示的控件时。使用此方法可以防止错误,例如 ArgumentException: Getting control 0's position in a group with only 0 controls when doing Repaint

其他资源:GetControlID