Name | Description |
---|---|
Style | An optional style to use for the window. If left out, the window style from the current GUISkin is used. |
Rect - The rectangle the window is at.
Make a popup window.
Windows float above normal GUI controls, feature click-to-focus and can optionally be dragged around by the end user. Unlike other controls, you need to pass them a separate function for the GUI controls to put inside the window. Note: If you are using GUILayout to place your components inside the window, you should use GUILayout.Window. Here is a small example to get you started:
var windowRect : Rect = Rect (20, 20, 120, 50);
function OnGUI () {
// Register the window. Notice the 3rd parameter
windowRect = GUI.Window (0, windowRect, DoMyWindow, "My Window");
}
// Make the contents of the window
function DoMyWindow (windowID : int) {
if (GUI.Button (Rect (10,20,100,20), "Hello World"))
print ("Got a click");
}
using UnityEngine;
using System.Collections;
public class example : MonoBehaviour {
public Rect windowRect = new Rect(20, 20, 120, 50);
void OnGUI() {
windowRect = GUI.Window(0, windowRect, DoMyWindow, "My Window");
}
void DoMyWindow(int windowID) {
if (GUI.Button(new Rect(10, 20, 100, 20), "Hello World"))
print("Got a click");
}
}
import UnityEngine
import System.Collections
class example(MonoBehaviour):
public windowRect as Rect = Rect(20, 20, 120, 50)
def OnGUI():
windowRect = GUI.Window(0, windowRect, DoMyWindow, 'My Window')
def DoMyWindow(windowID as int):
if GUI.Button(Rect(10, 20, 100, 20), 'Hello World'):
print('Got a click')
var windowRect0 : Rect = Rect (20, 20, 120, 50);
var windowRect1 : Rect = Rect (20, 100, 120, 50);
function OnGUI () {
// Register the window. We create two windows that use the same function
// Notice that their IDs differ
windowRect0 = GUI.Window (0, windowRect0, DoMyWindow, "My Window");
windowRect1 = GUI.Window (1, windowRect1, DoMyWindow, "My Window");
}
// Make the contents of the window
function DoMyWindow (windowID : int) {
if (GUI.Button (Rect (10,20,100,20), "Hello World"))
print ("Got a click in window " + windowID);
// Make the windows be draggable.
GUI.DragWindow (Rect (0,0,10000,10000));
}
using UnityEngine;
using System.Collections;
public class example : MonoBehaviour {
public Rect windowRect0 = new Rect(20, 20, 120, 50);
public Rect windowRect1 = new Rect(20, 100, 120, 50);
void OnGUI() {
windowRect0 = GUI.Window(0, windowRect0, DoMyWindow, "My Window");
windowRect1 = GUI.Window(1, windowRect1, DoMyWindow, "My Window");
}
void DoMyWindow(int windowID) {
if (GUI.Button(new Rect(10, 20, 100, 20), "Hello World"))
print("Got a click in window " + windowID);
GUI.DragWindow(new Rect(0, 0, 10000, 10000));
}
}
import UnityEngine
import System.Collections
class example(MonoBehaviour):
public windowRect0 as Rect = Rect(20, 20, 120, 50)
public windowRect1 as Rect = Rect(20, 100, 120, 50)
def OnGUI():
windowRect0 = GUI.Window(0, windowRect0, DoMyWindow, 'My Window')
windowRect1 = GUI.Window(1, windowRect1, DoMyWindow, 'My Window')
def DoMyWindow(windowID as int):
if GUI.Button(Rect(10, 20, 100, 20), 'Hello World'):
print(('Got a click in window ' + windowID))
GUI.DragWindow(Rect(0, 0, 10000, 10000))
// boolean variable to decide whether to show the window or not.
// Change this from the in-game GUI, scripting, the inspector or anywhere else to
// decide whether the window is visible
var doWindow0 : boolean = true;
// Make the contents of the window.
function DoWindow0 (windowID : int) {
GUI.Button (Rect (10,30, 80,20), "Click Me!");
}
function OnGUI () {
// Make a toggle button for hiding and showing the window
doWindow0 = GUI.Toggle (Rect (10,10,100,20), doWindow0, "Window 0");
// Make sure we only call GUI.Window if doWindow0 is true.
if (doWindow0)
GUI.Window (0, Rect (110,10,200,60), DoWindow0, "Basic Window");
}
using UnityEngine;
using System.Collections;
public class example : MonoBehaviour {
public bool doWindow0 = true;
void DoWindow0(int windowID) {
GUI.Button(new Rect(10, 30, 80, 20), "Click Me!");
}
void OnGUI() {
doWindow0 = GUI.Toggle(new Rect(10, 10, 100, 20), doWindow0, "Window 0");
if (doWindow0)
GUI.Window(0, new Rect(110, 10, 200, 60), DoWindow0, "Basic Window");
}
}
import UnityEngine
import System.Collections
class example(MonoBehaviour):
public doWindow0 as bool = true
def DoWindow0(windowID as int):
GUI.Button(Rect(10, 30, 80, 20), 'Click Me!')
def OnGUI():
doWindow0 = GUI.Toggle(Rect(10, 10, 100, 20), doWindow0, 'Window 0')
if doWindow0:
GUI.Window(0, Rect(110, 10, 200, 60), DoWindow0, 'Basic Window')
var windowRect0 : Rect = Rect (20, 20, 120, 50);
var windowRect1 : Rect = Rect (20, 100, 120, 50);
function OnGUI () {
// Here we make 2 windows. We set the GUI.color value to something before each.
GUI.color = Color.red;
windowRect0 = GUI.Window (0, windowRect0, DoMyWindow, "Red Window");
GUI.color = Color.green;
windowRect1 = GUI.Window (1, windowRect1, DoMyWindow, "Green Window");
}
// Make the contents of the window.
// The value of GUI.color is set to what it was when the window
// was created in the code above.
function DoMyWindow (windowID : int) {
if (GUI.Button (Rect (10,20,100,20), "Hello World"))
print ("Got a click in window with color " + GUI.color);
// Make the windows be draggable.
GUI.DragWindow (Rect (0,0,10000,10000));
}
using UnityEngine;
using System.Collections;
public class example : MonoBehaviour {
public Rect windowRect0 = new Rect(20, 20, 120, 50);
public Rect windowRect1 = new Rect(20, 100, 120, 50);
void OnGUI() {
GUI.color = Color.red;
windowRect0 = GUI.Window(0, windowRect0, DoMyWindow, "Red Window");
GUI.color = Color.green;
windowRect1 = GUI.Window(1, windowRect1, DoMyWindow, "Green Window");
}
void DoMyWindow(int windowID) {
if (GUI.Button(new Rect(10, 20, 100, 20), "Hello World"))
print("Got a click in window with color " + GUI.color);
GUI.DragWindow(new Rect(0, 0, 10000, 10000));
}
}
import UnityEngine
import System.Collections
class example(MonoBehaviour):
public windowRect0 as Rect = Rect(20, 20, 120, 50)
public windowRect1 as Rect = Rect(20, 100, 120, 50)
def OnGUI():
GUI.color = Color.red
windowRect0 = GUI.Window(0, windowRect0, DoMyWindow, 'Red Window')
GUI.color = Color.green
windowRect1 = GUI.Window(1, windowRect1, DoMyWindow, 'Green Window')
def DoMyWindow(windowID as int):
if GUI.Button(Rect(10, 20, 100, 20), 'Hello World'):
print(('Got a click in window with color ' + GUI.color))
GUI.DragWindow(Rect(0, 0, 10000, 10000))