using UnityEngine; using UnityEditor; public class WindowTool : EditorWindow { [MenuItem("Tools/窗口管理")] public static void ShowWindow() { EditorWindow.GetWindow("窗口管理").Show(); } [SerializeField] private string windowName; private void OnGUI() { EditorGUILayout.Space(); EditorGUILayout.BeginHorizontal(); GUILayout.Label("窗口名称"); EditorGUILayout.EndHorizontal(); windowName = GUILayout.TextField(windowName, GUILayout.MinWidth(300)); if (GUILayout.Button("打开")) { OpenWindow(); } } private void OpenWindow() { if (string.IsNullOrEmpty(windowName) || !Application.isPlaying) return; UIManager.Instance.OpenWindow(windowName); } }