Version: 2020.2
public static void DragWindow (Rect position);

Parameters

position@param position Часть окна, которое может быть перетащено. Эта часть ограничена текущим окном.

Description

Делает окно перетаскиваемым.

Чтобы сделать окно перетаскиваемым, вставьте вызов данной функции внутри кода обработки окна.

using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour { public Rect windowRect = new Rect(20, 20, 120, 50);

void OnGUI() { // Register the window. windowRect = GUI.Window(0, windowRect, DoMyWindow, "My Window"); }

// Make the contents of the window void DoMyWindow(int windowID) { // Make a very long rect that is 20 pixels tall. // This will make the window be resizable by the top // title bar - no matter how wide it gets. GUI.DragWindow(new Rect(0, 0, 10000, 20)); } }

public static void DragWindow ();

Description

Если вы хотите взаимодействовать со всем фоном окна, как с перетаскиваемой областью, используйте версию функции DragWindow без параметров, и поместите вызов этой функции в конец функции обработки окна.

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;

public class ExampleClass : MonoBehaviour { public Rect windowRect = new Rect(20, 20, 120, 50);

void OnGUI() { windowRect = GUI.Window(0, windowRect, DoMyWindow, "My Window"); }

// Make the contents of the window void DoMyWindow(int windowID) { GUI.Button(new Rect(10, 20, 100, 20), "Can't drag me"); // Insert a huge dragging area at the end. // This gets clipped to the window (like all other controls) so you can never // drag the window from outside it. GUI.DragWindow(new Rect(0, 0, 10000, 20)); } }