什么时候触发了MouseLeave事件?

时间:2013-10-20 18:40:19

标签: c# windows-phone-8 windows-phone

根据这篇MSDN文章:“MouseLeave事件是为响应在对象边界区域外发生的触摸事件而引发的。”但是在实现中我发现它在对象的边界区域上释放时触发(就像OnMouseLeave一样)。

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

1 个答案:

答案 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
    }

请在该页面上阅读。它似乎在回答他们的问题。

祝你好运!