根据这篇MSDN文章:“MouseLeave事件是为响应在对象边界区域外发生的触摸事件而引发的。”但是在实现中我发现它在对象的边界区域上释放时触发(就像OnMouseLeave一样)。
那么如何在UI对象边界外部点击时触发它?
答案 0 :(得分:0)
我是C#和StackOverflow的新手,但我想我可能会贡献我发现的东西。我快速搜索了Google,并发现了this article关于检测GUI之外的点击次数。
这是一个快速方法/说明(在链接中找到),用于检测在GUI上绘制的矩形外部的点击次数。 “当您使用GUI窗口或组/区域时,可以使用其Rect检查鼠标是否在内部。”
Rect windowPos = new Rect(10,10,200,150);
void OnGUI()
{
Event e = Event.current;
windowPos = GUI.Window(0, windowPos, drawWindow, "MyWindow");
if (e.type == EventType.MouseDown && !windowPos.Contains(e.mousePosition))
{
// Click was outside of the GUI window
}
}
void drawWindow(int aID)
{
// draw the window content
}
请在该页面上阅读。它似乎在回答他们的问题。
祝你好运!