Version: 5.5 (switch to 5.6b)
  • C#
  • JS

Script language

Select your preferred scripting language. All code snippets will be displayed in this language.


Suggest a change


Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.


Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.



public static function BeginHorizontal(params options: GUILayoutOption[]): Rect;
public static Rect BeginHorizontal(params GUILayoutOption[] options);
public static function BeginHorizontal(style: GUIStyle, params options: GUILayoutOption[]): Rect;
public static Rect BeginHorizontal(GUIStyle style, params GUILayoutOption[] options);


style Optional GUIStyle.
options An optional list of layout options that specify extra layouting properties. Any values passed in here will override settings defined by the style.
See Also: GUILayout.Width, GUILayout.Height, GUILayout.MinWidth, GUILayout.MaxWidth, GUILayout.MinHeight, GUILayout.MaxHeight, GUILayout.ExpandWidth, GUILayout.ExpandHeight.


Begin a horizontal group and get its rect back.

This is an extension to GUILayout.BeginHorizontal. It can be used for making compound controls.

Horizontal Compound group.

#pragma strict
// Create a Horizontal Compound Button
public class BeginEndHorizontalExample extends EditorWindow {
	@MenuItem("Examples/Begin-End Horizontal usage")
	static function Init() {
		var window: BeginEndHorizontalExample = BeginEndHorizontalExampleGetWindow(BeginEndHorizontalExample);
	function OnGUI() {
		var r: Rect = EditorGUILayout.BeginHorizontal("Button");
		if (GUI.Button(r, GUIContent.none))
			Debug.Log("Go here");
		GUILayout.Label("I'm inside the button");
		GUILayout.Label("So am I");
// Create a Horizontal Compound Button

using UnityEngine; using UnityEditor;

public class BeginEndHorizontalExample : EditorWindow {

[MenuItem("Examples/Begin-End Horizontal usage")] static void Init() { BeginEndHorizontalExample window = (BeginEndHorizontalExample)GetWindow(typeof(BeginEndHorizontalExample)); window.Show(); }

void OnGUI() { Rect r = EditorGUILayout.BeginHorizontal ("Button"); if (GUI.Button (r, GUIContent.none)) Debug.Log ("Go here"); GUILayout.Label ("I'm inside the button"); GUILayout.Label ("So am I"); EditorGUILayout.EndHorizontal (); } }