Unity 编辑器:禁用父窗口并打开子窗口
在 Unity 编辑器中,打开子窗口时通常不会关闭父窗口,但可以禁用父窗口以防止用户在其上执行任何操作。
为了禁用父窗口,可以使用 EditorWindow 的 isEnabled 属性。以下是一个示例代码:
public class MyWindow : EditorWindow
{
private bool showChildWindow = false;
private ChildWindow childWindow;
private void OnGUI()
{
if (showChildWindow)
{
// 禁用父窗口
isEnabled = false;
// 显示子窗口
childWindow.Show();
}
else
{
// 启用父窗口
isEnabled = true;
// 显示父窗口的 GUI
// ...
}
}
}
在这个示例中,当 showChildWindow 变量为 true 时,将禁用父窗口并显示子窗口。当 showChildWindow 变量为 false 时,将启用父窗口并显示父窗口的 GUI。
请注意,在子窗口关闭时,应该重新启用父窗口:
private void OnDisable()
{
// 启用父窗口
isEnabled = true;
}
这样可以确保用户在关闭子窗口后可以继续使用父窗口。
原文地址: https://www.cveoy.top/t/topic/lLbI 著作权归作者所有。请勿转载和采集!