Legacy Documentation: Version 4.5.0

Script language:

  • JS
  • C#
  • Boo
Script language

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

GUILayoutUtility.GetLastRect

static function GetLastRect(): Rect;
static Rect GetLastRect();
static def GetLastRect() as Rect

Returns

Rect The last used rectangle.

Description

Get the rectangle last used by GUILayout for a control.

Note that this only works during the Repaint event.

	function OnGUI() {
		GUILayout.Button( "My button" );
		if(Event.current.type == EventType.Repaint && 
		   GUILayoutUtility.GetLastRect().Contains(Event.current.mousePosition )) {
			GUILayout.Label( "Mouse over!" );
		} else {
			GUILayout.Label( "Mouse somewhere else" );
		}
	}
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour {
    void OnGUI() {
        GUILayout.Button("My button");
        if (Event.current.type == EventType.Repaint && GUILayoutUtility.GetLastRect().Contains(Event.current.mousePosition))
            GUILayout.Label("Mouse over!");
        else
            GUILayout.Label("Mouse somewhere else");
    }
}
import UnityEngine
import System.Collections

public class ExampleClass(MonoBehaviour):

	def OnGUI() as void:
		GUILayout.Button('My button')
		if (Event.current.type == EventType.Repaint) and GUILayoutUtility.GetLastRect().Contains(Event.current.mousePosition):
			GUILayout.Label('Mouse over!')
		else:
			GUILayout.Label('Mouse somewhere else')