1
有没有办法来检测GUI窗口已关闭?我正在构建一个编辑器工具,我需要在窗口关闭后执行一些操作。理想情况下,如果有回调或事件通知我,那么这将是完美的。我搜查了很多,但我没有找到任何东西。我也可能使用错误的关键字进行搜索。有没有解决办法?任何帮助是极大的赞赏。谢谢!检测GUI窗口关闭在团结
有没有办法来检测GUI窗口已关闭?我正在构建一个编辑器工具,我需要在窗口关闭后执行一些操作。理想情况下,如果有回调或事件通知我,那么这将是完美的。我搜查了很多,但我没有找到任何东西。我也可能使用错误的关键字进行搜索。有没有解决办法?任何帮助是极大的赞赏。谢谢!检测GUI窗口关闭在团结
完整的源代码和原来的职位,可以发现here:
您可以尝试使用一个布尔属性伪造的窗口关闭/打开的效果,每当二传手被调用时,一些功能OnWindowClosed()为得到所谓:
测试在Mac OSX:
bool _bWindowActive;
public bool bWindowActive {
get { return _bWindowActive;}
set {
_bWindowActive = value;
if (!bWindowActive) {
//This is called everytime, when bWindowActive = false;
OnWindowClosed();
}
}
}
public void OnWindowClosed()
{
Debug.Log ("Windows Closed");
}
public void OnGUI() {
if (GUI.Button (new Rect (10, 20, 100, 20), "Show Window"))
bWindowActive = true;
if (GUI.Button (new Rect (10,60,100,20), "Close Window"))
bWindowActive = false;
if (bWindowActive) {
GUI.Window (0, new Rect(200, 10, 200, 200), DoMyWindow, "My Window");
}
}
public void DoMyWindow(int windowID) {
if (GUI.Button (new Rect (10,20,100,20), "Hello World"))
print ("Got a click");
}
嗨,该SOLU重刑看起来不错。但在这种情况下,您已经创建了一个自定义按钮。但任何想法如何将其链接到出现在编辑器窗口右上角的传统(x)按钮。我正在为艺术家开发这个工具。所以我想尽可能保持简单。否则,我将不得不创建一个自定义按钮并将其用于关闭。 – Aadithya
我实际上发现了一个EditorWindow.OnDestory(),在昨天整个过程中我都无法使用它。但我真的很喜欢你的解决方案 - 这是一个有趣的方式。谢谢! – Aadithya