0

根据此MSDN文章:“引发 MouseLeave 事件以响应对象边界区域外发生的触摸事件。”。但在实现中,我发现它在释放对象边界区域的点击时被触发(就像 OnMouseLeave 一样)。

那么如何在 UI 对象的边界外点击时让它触发呢?

4

1 回答 1

0

我是 C# 和 StackOverflow 的新手,但我想我可能会贡献我发现的东西。我在 Google 上快速搜索了“”,发现了这篇关于检测 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
    }

就去那一页读吧。它似乎之前回答了他们的问题。

祝你好运!

于 2013-10-20T20:21:05.843 回答