예제 #1
0
 private static void Log(object?sender, IHookEventArgs e)
 {
     if (e is IKeyboardEventArgs keyboard)
     {
         Console.WriteLine("[{0}] Keyboard: {1}, {2}, {3}", e.Time, keyboard.Key, keyboard.KeyState, keyboard.KeyChar);
     }
     else if (e is IMouseEventArgs mouse)
     {
         Console.WriteLine("[{0}] Mouse: ({1}; {2}){3}, {4}, {5}, {6}, {7}, {8}",
                           e.Time,
                           mouse.Coords.X, mouse.Coords.Y, mouse.Coords.IsRelative ? "R" : string.Empty,
                           mouse.MouseEventType,
                           mouse.Key,
                           mouse.KeyState,
                           mouse.IsDoubleClick,
                           mouse.Delta);
     }
     else
     {
         Console.WriteLine("[{0}] Unknown", e.Time);
     }
 }
예제 #2
0
 private void InvokeOnEvent(object sender, IHookEventArgs e) => OnEvent?.Invoke(sender, e);