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

GroupScope

UnityEngine 中的类

/

实现于:UnityEngine.IMGUIModule

建议更改

成功!

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

关闭

提交失败

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

关闭

取消

描述

用于管理 BeginGroup / EndGroup 的一次性帮助器类。

BeginGroup 在构造时被调用,而 EndGroup 在实例被释放时被调用。当您开始一个组时,GUI 控件的坐标系会被设置为 (0,0) 为组的左上角。所有控件都被裁剪到组内。组可以嵌套 - 如果嵌套,子组会被裁剪到其父组内。

这在屏幕上移动一堆 GUI 元素时非常有用。一个常见的用例是设计您的菜单以适应特定屏幕尺寸,然后在更大的显示器上居中 GUI。

using UnityEngine;

public class Example : MonoBehaviour { void OnGUI() { // Constrain all drawing to be within a 800x600 pixel area centered on the screen. using (var groupScope = new GUI.GroupScope(new Rect(Screen.width / 2 - 400, Screen.height / 2 - 300, 800, 600))) { // Draw a box in the new coordinate space defined by the BeginGroup. // Notice how (0,0) has now been moved on-screen. GUI.Box(new Rect(0, 0, 800, 600), "This box is now centered! - here you would put your main menu"); } // The group is now ended. } }

构造函数

GUI.GroupScope创建一个新的 GroupScope 并开始相应的组。