position | The part of the window that can be dragged. This is clipped to the actual window. |
Make a window draggable.
Insert a call to this function inside your window code to make a window draggable.
using UnityEngine; using System.Collections;
public class ExampleClass : MonoBehaviour { public Rect windowRect = new Rect(20, 20, 120, 50); void OnGUI() { windowRect = GUI.Window(0, windowRect, DoMyWindow, "My Window"); } void DoMyWindow(int windowID) { GUI.DragWindow(new Rect(0, 0, 10000, 20)); } }
If you want to have the entire window background to act as a drag area, use the version of DragWindow that takes no parameters and put it at the end of the window function.
This will mean that any other controls will get precedence and the dragging will only be activated if nothing else has mouse focus. See Also: DragWindow, BringWindowToFront, BringWindowToBack.
using UnityEngine; using System.Collections;
public class ExampleClass : MonoBehaviour { public Rect windowRect = new Rect(20, 20, 120, 50); void OnGUI() { windowRect = GUI.Window(0, windowRect, DoMyWindow, "My Window"); } void DoMyWindow(int windowID) { GUI.Button(new Rect(10, 20, 100, 20), "Can't drag me"); GUI.DragWindow(); } }