美文网首页
Global Event Filter in WinForm A

Global Event Filter in WinForm A

作者: wxy325 | 来源:发表于2016-08-05 10:55 被阅读60次

Application

System.Windows.Forms.Application;

Global Event Filter

public class GlobalEventFilter : IMessageFilter{
        public bool PreFilterMessage(ref Message m){
                return false; // not filter
        }
}

GlobalEventFilter globalFilter = new GlobalEventFilter();
Application.AddMessageFilter(globalFilter);

Some Example

Listen to Global Mouse Move Event

class GlobalMouseMoveHandler : IMessageFilter
    {
        private const int WM_MOUSEMOVE = 0x200;
        public bool PreFilterMessage(ref Message m)
        {
            if (m.Msg == WM_MOUSEMOVE)
            {
                Console.WriteLine("mouse move");
            }
            return false;
        }
    }

Filter Keydown Event

TBD

Some Common Use Event Key List

WM_MOUSEMOVE=0x0200
WM_LBUTTONDOWN=0x0201
WM_LBUTTONUP=0x0202
WM_LBUTTONDBLCLK=0x0203

Reference

All Event Keys List

相关文章

网友评论

      本文标题:Global Event Filter in WinForm A

      本文链接:https://www.haomeiwen.com/subject/rcuhsttx.html