# GetWindowWithRect

> Returns the first EditorWindow of type t which is currently on the screen.

## Definition

* **Type:** Method
* **Namespace:** [UnityEditor](/engine/6000.0/script-reference/unityeditor.md)
* **Assembly:** UnityEditor

## GetWindowWithRect(Type, Rect, bool, string)

Returns the first EditorWindow of type t which is currently on the screen.

```csharp
public static EditorWindow GetWindowWithRect(Type windowType, Rect rect, bool utility, string title)
```

### Parameters

**** (\[Type]\(https\://learn.microsoft.com/dotnet/api/system.type)): The type of the window. Must derive from EditorWindow.**** (\[Rect]\(/engine/6000.0/script-reference/unityengine/rect)): The position on the screen where a newly created window will show.**** (\[bool]\(https\://learn.microsoft.com/dotnet/api/system.boolean)): Set this to true, to create a floating utility window, false to create a normal window.**** (\[string]\(https\://learn.microsoft.com/dotnet/api/system.string)): If GetWindow creates a new window, it will get this title. If this value is null, use the class name as title.

### Returns

| Type                                                                        | Description |
| --------------------------------------------------------------------------- | ----------- |
| [EditorWindow](/engine/6000.0/script-reference/unityeditor/editorwindow.md) |             |

### Remarks

If there is none, creates and shows new window at the position rect and returns the instance of it.

![GetWindowRectEx (GetWindowWithRect)](/api/media?file=/engine/6000.0/media/images/GetWindowRectEx.png)

*Create an empty 100x150px window at the upper left corner of the screen.*

### Examples

```csharp
using UnityEngine;
using UnityEditor;

// Create a dockable empty window at the top left corner of the screen
// with 100px width and 150px height.

public class EditorWindowTestRect : EditorWindow
{
    [MenuItem("Examples/Display simple sized Window")]
    static void Initialize()
    {
        EditorWindowTestRect window = (EditorWindowTestRect)EditorWindow.GetWindowWithRect(typeof(EditorWindowTestRect), new Rect(0, 0, 100, 150));
    }
}
```

## GetWindowWithRect\<T>(Rect)

Returns the first EditorWindow of type t which is currently on the screen.

```csharp
public static T GetWindowWithRect<T>(Rect rect) where T : EditorWindow
```

### Parameters

**** (\[Rect]\(/engine/6000.0/script-reference/unityengine/rect)): The position on the screen where a newly created window will show.

### Returns

| Type | Description                         |
| ---- | ----------------------------------- |
| T    | An EditorWindow instance of type T. |

### Remarks

If there is none, creates and shows new window at the position rect and returns the instance of it.

## GetWindowWithRect\<T>(Rect, bool)

Returns the first EditorWindow of type t which is currently on the screen.

```csharp
public static T GetWindowWithRect<T>(Rect rect, bool utility) where T : EditorWindow
```

### Parameters

**** (\[Rect]\(/engine/6000.0/script-reference/unityengine/rect)): The position on the screen where a newly created window will show.**** (\[bool]\(https\://learn.microsoft.com/dotnet/api/system.boolean)): Set this to true, to create a floating utility window, false to create a normal window.

### Returns

| Type | Description                         |
| ---- | ----------------------------------- |
| T    | An EditorWindow instance of type T. |

### Remarks

If there is none, creates and shows new window at the position rect and returns the instance of it.

## GetWindowWithRect\<T>(Rect, bool, string)

Returns the first EditorWindow of type t which is currently on the screen.

```csharp
public static T GetWindowWithRect<T>(Rect rect, bool utility, string title) where T : EditorWindow
```

### Parameters

**** (\[Rect]\(/engine/6000.0/script-reference/unityengine/rect)): The position on the screen where a newly created window will show.**** (\[bool]\(https\://learn.microsoft.com/dotnet/api/system.boolean)): Set this to true, to create a floating utility window, false to create a normal window.**** (\[string]\(https\://learn.microsoft.com/dotnet/api/system.string)): If GetWindow creates a new window, it will get this title. If this value is null, use the class name as title.

### Returns

| Type | Description                         |
| ---- | ----------------------------------- |
| T    | An EditorWindow instance of type T. |

### Remarks

If there is none, creates and shows new window at the position rect and returns the instance of it.

## GetWindowWithRect\<T>(Rect, bool, string, bool)

Returns the first EditorWindow of type t which is currently on the screen.

```csharp
public static T GetWindowWithRect<T>(Rect rect, bool utility, string title, bool focus) where T : EditorWindow
```

### Parameters

**** (\[Rect]\(/engine/6000.0/script-reference/unityengine/rect)): The position on the screen where a newly created window will show.**** (\[bool]\(https\://learn.microsoft.com/dotnet/api/system.boolean)): Set this to true, to create a floating utility window, false to create a normal window.**** (\[string]\(https\://learn.microsoft.com/dotnet/api/system.string)): If GetWindow creates a new window, it will get this title. If this value is null, use the class name as title.**** (\[bool]\(https\://learn.microsoft.com/dotnet/api/system.boolean)): Whether to give the window focus, if it already exists. (If GetWindow creates a new window, it will always get focus).

### Returns

| Type | Description                         |
| ---- | ----------------------------------- |
| T    | An EditorWindow instance of type T. |

### Remarks

If there is none, creates and shows new window at the position rect and returns the instance of it.
