# TextArea(Rect, string, GUIStyle)

> Makes a text area.

## Definition

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

```csharp
public static string TextArea(Rect position, string text, GUIStyle style)
```

### Parameters

**** (\[Rect]\(/engine/6000.0/script-reference/unityengine/rect)): Rectangle on the screen to use for the text field.**** (\[string]\(https\://learn.microsoft.com/dotnet/api/system.string)): The text to edit.**** (\[GUIStyle]\(/engine/6000.0/script-reference/unityengine/guistyle)): Optional [GUIStyle](/engine/6000.0/script-reference/unityengine/guistyle.md).

### Returns

| Type                                                           | Description                   |
| -------------------------------------------------------------- | ----------------------------- |
| [string](https://learn.microsoft.com/dotnet/api/system.string) | The text entered by the user. |

### Remarks

This works just like [GUI.TextArea](/engine/6000.0/script-reference/unityengine/gui/textarea.md), but correctly responds to select all, copy, paste etc. in the editor.

![EditorGUITextArea (TextArea(Rect, string, GUIStyle))](/api/media?file=/engine/6000.0/media/images/EditorGUITextArea.png)

*Text Area in an Editor Window.*

### Examples

```csharp
using UnityEngine;
using UnityEditor;

// Create a window where you can have notes
// This doesnt preserve the notes between sessions.
//
// check EditorPrefs Get/SetString to save the notes.

class EditorGUITextArea : EditorWindow
{
    string note = "Notes:\n->";

    [MenuItem("Examples/Notes")]
    static void Init()
    {
        EditorWindow window = GetWindow<EditorGUITextArea>();
        window.position = new Rect(0, 0, 350, 70);
        window.Show();
    }

    void OnGUI()
    {
        note = EditorGUI.TextArea(new Rect(3, 3, position.width - 6, position.height - 35), note);
        if (GUI.Button(new Rect(0, position.height - 30, position.width, 25), "Close"))
        {
            this.Close();
        }
    }
}
```
