Version: 2021.3
public static string TextField (Rect position, string text, GUIStyle style= EditorStyles.textField);
public static string TextField (Rect position, string label, string text, GUIStyle style= EditorStyles.textField);
public static string TextField (Rect position, GUIContent label, string text, GUIStyle style= EditorStyles.textField);

参数

position 屏幕上用于文本字段的矩形。
label (可选)显示在文本字段前的标签。
text 要编辑的文本。
style 可选 GUIStyle

返回

string 用户输入的文本。

描述

创建一个文本字段。

此方法的运行方式与 GUI.TextField 类似,但能够正确响应编辑器中的 Select All、Copy、Paste 等操作, 并可在前面提供一个可选标签。


编辑器窗口中的 Text 字段。

using UnityEngine;
using UnityEditor;

// Changes the name of the selected Objects to the one typed in the text field

class EditorGUITextField : EditorWindow { string objNames = "";

[MenuItem("Examples/Bulk Name change")] static void Init() { var window = GetWindow<EditorGUITextField>(); window.Show(); }

void OnGUI() { EditorGUI.DropShadowLabel(new Rect(0, 0, position.width, 20), "Select the objects to rename.");

objNames = EditorGUI.TextField(new Rect(10, 25, position.width - 20, 20), "New Names:", objNames);

if (Selection.activeTransform) { if (GUI.Button(new Rect(0, 50, position.width, 30), "Bulk rename!")) { foreach (Transform t in Selection.transforms) { t.name = objNames; } } } }

void OnInspectorUpdate() { Repaint(); } }
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961