# Box

> Make an auto-layout box.

## Definition

* **Type:** Method
* **Namespace:** [UnityEngine](/engine/6000.7/script-reference/unityengine.md)
* **Assembly:** UnityEngine.IMGUIModule

## Box(Texture, GUILayoutOption\[])

Make an auto-layout box.

```csharp
public static void Box(Texture image, params GUILayoutOption[] options)
```

### Parameters

**** (\[Texture]\(/engine/6000.7/script-reference/unityengine/texture)): [Texture](/engine/6000.7/script-reference/unityengine/texture.md) to display on the box.**** (\[GUILayoutOption\[]]\(/engine/6000.7/script-reference/unityengine/guilayoutoption)): An optional list of layout options that specify extra layouting properties. Any values passed in here will override settings defined by the `style`.\
&#x20;[GUILayout.MaxHeight](/engine/6000.7/script-reference/unityengine/guilayout/maxheight.md), [GUILayout.ExpandWidth](/engine/6000.7/script-reference/unityengine/guilayout/expandwidth.md), [GUILayout.ExpandHeight](/engine/6000.7/script-reference/unityengine/guilayout/expandheight.md)

### Remarks

This will make a box that contains static text or images but not other GUI controls. If you want to make a rectangular container for a set of GUI controls, use one of the grouping functions ([GUILayout.BeginHorizontal](/engine/6000.7/script-reference/unityengine/guilayout/beginhorizontal.md), [GUILayout.BeginVertical](/engine/6000.7/script-reference/unityengine/guilayout/beginvertical.md), [GUILayout.BeginArea](/engine/6000.7/script-reference/unityengine/guilayout/beginarea.md), etc...).

![GUILayoutBox (Box)](/api/media?file=/engine/6000.7/media/images/GUILayoutBox.png)

Boxes in the Game View.

Additional Resources: [GUILayout.Width](/engine/6000.7/script-reference/unityengine/guilayout/width.md), [GUILayout.Height](/engine/6000.7/script-reference/unityengine/guilayout/height.md), [GUILayout.MinWidth](/engine/6000.7/script-reference/unityengine/guilayout/minwidth.md), [GUILayout.MaxWidth](/engine/6000.7/script-reference/unityengine/guilayout/maxwidth.md), [GUILayout.MinHeight](/engine/6000.7/script-reference/unityengine/guilayout/minheight.md)

### Examples

```csharp
using UnityEngine;

public class ExampleScript : MonoBehaviour
{
    Texture tex;

    void OnGUI()
    {
        if (!tex)
        {
            Debug.LogError("Missing texture, assign a texture in the inspector");
        }
        GUILayout.Box(tex);
        GUILayout.Box("This is a sized label");
    }
}
```

## Box(string, GUILayoutOption\[])

Make an auto-layout box.

```csharp
public static void Box(string text, params GUILayoutOption[] options)
```

### Parameters

**** (\[string]\(https\://learn.microsoft.com/dotnet/api/system.string)): Text to display on the box.**** (\[GUILayoutOption\[]]\(/engine/6000.7/script-reference/unityengine/guilayoutoption)): An optional list of layout options that specify extra layouting properties. Any values passed in here will override settings defined by the `style`.\
&#x20;[GUILayout.MaxHeight](/engine/6000.7/script-reference/unityengine/guilayout/maxheight.md), [GUILayout.ExpandWidth](/engine/6000.7/script-reference/unityengine/guilayout/expandwidth.md), [GUILayout.ExpandHeight](/engine/6000.7/script-reference/unityengine/guilayout/expandheight.md)

### Remarks

This will make a box that contains static text or images but not other GUI controls. If you want to make a rectangular container for a set of GUI controls, use one of the grouping functions ([GUILayout.BeginHorizontal](/engine/6000.7/script-reference/unityengine/guilayout/beginhorizontal.md), [GUILayout.BeginVertical](/engine/6000.7/script-reference/unityengine/guilayout/beginvertical.md), [GUILayout.BeginArea](/engine/6000.7/script-reference/unityengine/guilayout/beginarea.md), etc...).

![GUILayoutBox (Box)](/api/media?file=/engine/6000.7/media/images/GUILayoutBox.png)

Boxes in the Game View.

Additional Resources: [GUILayout.Width](/engine/6000.7/script-reference/unityengine/guilayout/width.md), [GUILayout.Height](/engine/6000.7/script-reference/unityengine/guilayout/height.md), [GUILayout.MinWidth](/engine/6000.7/script-reference/unityengine/guilayout/minwidth.md), [GUILayout.MaxWidth](/engine/6000.7/script-reference/unityengine/guilayout/maxwidth.md), [GUILayout.MinHeight](/engine/6000.7/script-reference/unityengine/guilayout/minheight.md)

### Examples

```csharp
using UnityEngine;

public class ExampleScript : MonoBehaviour
{
    Texture tex;

    void OnGUI()
    {
        if (!tex)
        {
            Debug.LogError("Missing texture, assign a texture in the inspector");
        }
        GUILayout.Box(tex);
        GUILayout.Box("This is a sized label");
    }
}
```

## Box(GUIContent, GUILayoutOption\[])

Make an auto-layout box.

```csharp
public static void Box(GUIContent content, params GUILayoutOption[] options)
```

### Parameters

**** (\[GUIContent]\(/engine/6000.7/script-reference/unityengine/guicontent)): Text, image and tooltip for this box.**** (\[GUILayoutOption\[]]\(/engine/6000.7/script-reference/unityengine/guilayoutoption)): An optional list of layout options that specify extra layouting properties. Any values passed in here will override settings defined by the `style`.\
&#x20;[GUILayout.MaxHeight](/engine/6000.7/script-reference/unityengine/guilayout/maxheight.md), [GUILayout.ExpandWidth](/engine/6000.7/script-reference/unityengine/guilayout/expandwidth.md), [GUILayout.ExpandHeight](/engine/6000.7/script-reference/unityengine/guilayout/expandheight.md)

### Remarks

This will make a box that contains static text or images but not other GUI controls. If you want to make a rectangular container for a set of GUI controls, use one of the grouping functions ([GUILayout.BeginHorizontal](/engine/6000.7/script-reference/unityengine/guilayout/beginhorizontal.md), [GUILayout.BeginVertical](/engine/6000.7/script-reference/unityengine/guilayout/beginvertical.md), [GUILayout.BeginArea](/engine/6000.7/script-reference/unityengine/guilayout/beginarea.md), etc...).

![GUILayoutBox (Box)](/api/media?file=/engine/6000.7/media/images/GUILayoutBox.png)

Boxes in the Game View.

Additional Resources: [GUILayout.Width](/engine/6000.7/script-reference/unityengine/guilayout/width.md), [GUILayout.Height](/engine/6000.7/script-reference/unityengine/guilayout/height.md), [GUILayout.MinWidth](/engine/6000.7/script-reference/unityengine/guilayout/minwidth.md), [GUILayout.MaxWidth](/engine/6000.7/script-reference/unityengine/guilayout/maxwidth.md), [GUILayout.MinHeight](/engine/6000.7/script-reference/unityengine/guilayout/minheight.md)

### Examples

```csharp
using UnityEngine;

public class ExampleScript : MonoBehaviour
{
    Texture tex;

    void OnGUI()
    {
        if (!tex)
        {
            Debug.LogError("Missing texture, assign a texture in the inspector");
        }
        GUILayout.Box(tex);
        GUILayout.Box("This is a sized label");
    }
}
```

## Box(Texture, GUIStyle, GUILayoutOption\[])

Make an auto-layout box.

```csharp
public static void Box(Texture image, GUIStyle style, params GUILayoutOption[] options)
```

### Parameters

**** (\[Texture]\(/engine/6000.7/script-reference/unityengine/texture)): [Texture](/engine/6000.7/script-reference/unityengine/texture.md) to display on the box.**** (\[GUIStyle]\(/engine/6000.7/script-reference/unityengine/guistyle)): The style to use. If left out, the `box` style from the current [GUISkin](/engine/6000.7/script-reference/unityengine/guiskin.md) is used.**** (\[GUILayoutOption\[]]\(/engine/6000.7/script-reference/unityengine/guilayoutoption)): An optional list of layout options that specify extra layouting properties. Any values passed in here will override settings defined by the `style`.\
&#x20;[GUILayout.MaxHeight](/engine/6000.7/script-reference/unityengine/guilayout/maxheight.md), [GUILayout.ExpandWidth](/engine/6000.7/script-reference/unityengine/guilayout/expandwidth.md), [GUILayout.ExpandHeight](/engine/6000.7/script-reference/unityengine/guilayout/expandheight.md)

### Remarks

This will make a box that contains static text or images but not other GUI controls. If you want to make a rectangular container for a set of GUI controls, use one of the grouping functions ([GUILayout.BeginHorizontal](/engine/6000.7/script-reference/unityengine/guilayout/beginhorizontal.md), [GUILayout.BeginVertical](/engine/6000.7/script-reference/unityengine/guilayout/beginvertical.md), [GUILayout.BeginArea](/engine/6000.7/script-reference/unityengine/guilayout/beginarea.md), etc...).

![GUILayoutBox (Box)](/api/media?file=/engine/6000.7/media/images/GUILayoutBox.png)

Boxes in the Game View.

Additional Resources: [GUILayout.Width](/engine/6000.7/script-reference/unityengine/guilayout/width.md), [GUILayout.Height](/engine/6000.7/script-reference/unityengine/guilayout/height.md), [GUILayout.MinWidth](/engine/6000.7/script-reference/unityengine/guilayout/minwidth.md), [GUILayout.MaxWidth](/engine/6000.7/script-reference/unityengine/guilayout/maxwidth.md), [GUILayout.MinHeight](/engine/6000.7/script-reference/unityengine/guilayout/minheight.md)

### Examples

```csharp
using UnityEngine;

public class ExampleScript : MonoBehaviour
{
    Texture tex;

    void OnGUI()
    {
        if (!tex)
        {
            Debug.LogError("Missing texture, assign a texture in the inspector");
        }
        GUILayout.Box(tex);
        GUILayout.Box("This is a sized label");
    }
}
```

## Box(string, GUIStyle, GUILayoutOption\[])

Make an auto-layout box.

```csharp
public static void Box(string text, GUIStyle style, params GUILayoutOption[] options)
```

### Parameters

**** (\[string]\(https\://learn.microsoft.com/dotnet/api/system.string)): Text to display on the box.**** (\[GUIStyle]\(/engine/6000.7/script-reference/unityengine/guistyle)): The style to use. If left out, the `box` style from the current [GUISkin](/engine/6000.7/script-reference/unityengine/guiskin.md) is used.**** (\[GUILayoutOption\[]]\(/engine/6000.7/script-reference/unityengine/guilayoutoption)): An optional list of layout options that specify extra layouting properties. Any values passed in here will override settings defined by the `style`.\
&#x20;[GUILayout.MaxHeight](/engine/6000.7/script-reference/unityengine/guilayout/maxheight.md), [GUILayout.ExpandWidth](/engine/6000.7/script-reference/unityengine/guilayout/expandwidth.md), [GUILayout.ExpandHeight](/engine/6000.7/script-reference/unityengine/guilayout/expandheight.md)

### Remarks

This will make a box that contains static text or images but not other GUI controls. If you want to make a rectangular container for a set of GUI controls, use one of the grouping functions ([GUILayout.BeginHorizontal](/engine/6000.7/script-reference/unityengine/guilayout/beginhorizontal.md), [GUILayout.BeginVertical](/engine/6000.7/script-reference/unityengine/guilayout/beginvertical.md), [GUILayout.BeginArea](/engine/6000.7/script-reference/unityengine/guilayout/beginarea.md), etc...).

![GUILayoutBox (Box)](/api/media?file=/engine/6000.7/media/images/GUILayoutBox.png)

Boxes in the Game View.

Additional Resources: [GUILayout.Width](/engine/6000.7/script-reference/unityengine/guilayout/width.md), [GUILayout.Height](/engine/6000.7/script-reference/unityengine/guilayout/height.md), [GUILayout.MinWidth](/engine/6000.7/script-reference/unityengine/guilayout/minwidth.md), [GUILayout.MaxWidth](/engine/6000.7/script-reference/unityengine/guilayout/maxwidth.md), [GUILayout.MinHeight](/engine/6000.7/script-reference/unityengine/guilayout/minheight.md)

### Examples

```csharp
using UnityEngine;

public class ExampleScript : MonoBehaviour
{
    Texture tex;

    void OnGUI()
    {
        if (!tex)
        {
            Debug.LogError("Missing texture, assign a texture in the inspector");
        }
        GUILayout.Box(tex);
        GUILayout.Box("This is a sized label");
    }
}
```

## Box(GUIContent, GUIStyle, GUILayoutOption\[])

Make an auto-layout box.

```csharp
public static void Box(GUIContent content, GUIStyle style, params GUILayoutOption[] options)
```

### Parameters

**** (\[GUIContent]\(/engine/6000.7/script-reference/unityengine/guicontent)): Text, image and tooltip for this box.**** (\[GUIStyle]\(/engine/6000.7/script-reference/unityengine/guistyle)): The style to use. If left out, the `box` style from the current [GUISkin](/engine/6000.7/script-reference/unityengine/guiskin.md) is used.**** (\[GUILayoutOption\[]]\(/engine/6000.7/script-reference/unityengine/guilayoutoption)): An optional list of layout options that specify extra layouting properties. Any values passed in here will override settings defined by the `style`.\
&#x20;[GUILayout.MaxHeight](/engine/6000.7/script-reference/unityengine/guilayout/maxheight.md), [GUILayout.ExpandWidth](/engine/6000.7/script-reference/unityengine/guilayout/expandwidth.md), [GUILayout.ExpandHeight](/engine/6000.7/script-reference/unityengine/guilayout/expandheight.md)

### Remarks

This will make a box that contains static text or images but not other GUI controls. If you want to make a rectangular container for a set of GUI controls, use one of the grouping functions ([GUILayout.BeginHorizontal](/engine/6000.7/script-reference/unityengine/guilayout/beginhorizontal.md), [GUILayout.BeginVertical](/engine/6000.7/script-reference/unityengine/guilayout/beginvertical.md), [GUILayout.BeginArea](/engine/6000.7/script-reference/unityengine/guilayout/beginarea.md), etc...).

![GUILayoutBox (Box)](/api/media?file=/engine/6000.7/media/images/GUILayoutBox.png)

Boxes in the Game View.

Additional Resources: [GUILayout.Width](/engine/6000.7/script-reference/unityengine/guilayout/width.md), [GUILayout.Height](/engine/6000.7/script-reference/unityengine/guilayout/height.md), [GUILayout.MinWidth](/engine/6000.7/script-reference/unityengine/guilayout/minwidth.md), [GUILayout.MaxWidth](/engine/6000.7/script-reference/unityengine/guilayout/maxwidth.md), [GUILayout.MinHeight](/engine/6000.7/script-reference/unityengine/guilayout/minheight.md)

### Examples

```csharp
using UnityEngine;

public class ExampleScript : MonoBehaviour
{
    Texture tex;

    void OnGUI()
    {
        if (!tex)
        {
            Debug.LogError("Missing texture, assign a texture in the inspector");
        }
        GUILayout.Box(tex);
        GUILayout.Box("This is a sized label");
    }
}
```
