Version: 2023.2

EditorWindow.HasOpenInstances

切换到手册
public static bool HasOpenInstances ();

参数

windowType 窗口类型。必须派生自 EditorWindow

返回

bool 如果与指定类型匹配的 EditorWindow 已打开,则返回 true。否则返回 false。

描述

检查编辑器窗口是否已打开。

using UnityEngine;
using UnityEditor;
using UnityEngine.UIElements;

public class HasOpenInstancesExample : EditorWindow
{
    [MenuItem("Examples/Has Open Instances")]
    static void Init()
    {
        var window = EditorWindow.GetWindow<HasOpenInstancesExample>();
        window.Show();
    }

    [MenuItem("Examples/Close Open Instances")]
    static void Close()
    {
        // Check if any window of type HasOpenInstancesExample is open.
        if (EditorWindow.HasOpenInstances<HasOpenInstancesExample>())
        {
            var window = EditorWindow.GetWindow(typeof(HasOpenInstancesExample));
            window.Close();
        }
    }

    void CreateGUI()
    {
        var label = new Label("Hello, World!");
        rootVisualElement.Add(label);
    }
}