-
Notifications
You must be signed in to change notification settings - Fork 2
Keyboard Interface
Soju06 edited this page Dec 7, 2021
·
7 revisions
키보드 인터페이스
키보드 후크 인터페이스
-
예제
using Input; using Input.Platforms.Windows; using System.Diagnostics; // 키보드 후커를 만듭니다. // 만약 지원하지 않는 플랫폼인 경우 NotSupportedException 예외가 발생할 수 있습니다. var hook = Inputs.Use<IKeyboardHook>(); // 디버그를 활성화 합니다. // 네이티브 오류를 디버그 출력 창에서 확인할 수 있습니다. hook.Debug = true; // 키보드 모델입니다. var model = hook.KeyboardModel; // 키보드가 눌렸을때 발생합니다. model.KeyDown += (sender, key, state) => { // Console은 쓰기 지연이 발생하므로 추천하지 않습니다. Debug.WriteLine($"KeyDown: {key} {state}"); // 반환 값이 false이면 입력을 무시합니다. return true; }; // 키보드가 떼졌을때 발생합니다. model.KeyUp += (sender, key, state) => { // Console은 쓰기 지연이 발생하므로 추천하지 않습니다. Debug.WriteLine($"KeyDown: {key} {state}"); // 반환 값이 false이면 입력을 무시합니다. return true; }; // 후킹을 시작합니다. hook.HookStart(); // 플랫폼이 윈도우인 경우 윈도우 메시지를 펌프해야합니다. if (Platform.IsWindows) { while (WindowsMessagePump.Pumping()) { Debug.WriteLine("message pump"); } } Console.ReadLine();
원본 예제는 여기에서 확인할 수 있습니다.
키보드 시뮬레이션 인터페이스
-
예제
using Input; using System.Diagnostics; // 키보드 시뮬레이션를 만듭니다. // 만약 지원하지 않는 플랫폼인 경우 NotSupportedException 예외가 발생할 수 있습니다. var simulation = Inputs.Use<IKeyboardSimulation>(); // 디버그를 활성화 합니다. // 네이티브 오류를 디버그 출력 창에서 확인할 수 있습니다. simulation.Debug = true; // 1.1 KeyClick // A 키를 클릭합니다. simulation.KeyClick(InputKeys.A); // 왼쪽 컨트롤 키와 Z키를 동시에 클릭합니다. simulation.KeyClick(InputKeys.LeftControl, InputKeys.Z); // 1.2 KeyDown // A 키를 누릅니다. simulation.KeyDown(InputKeys.A); // A 키와 B키를 누릅니다. simulation.KeyDown(InputKeys.A, InputKeys.B); // 1.3 KeyUp // A 키를 뗍니다. simulation.KeyUp(InputKeys.A); // A 키와 B키를 뗍니다. simulation.KeyUp(InputKeys.A, InputKeys.B); // 1.4 TextEntry // H e l l o , W or l d ! 키를 순차적으로 누릅니다. simulation.TextEntry("Hello, World!"); // 1.5 IsKeyDown // A 키가 눌려있는지 여부를 가져옵니다. simulation.IsKeyDown(InputKeys.A); // 1.6 ReleaseAllKeys // 키보드의 모든 키를 뗍니다. simulation.ReleaseAllKeys();
원본 예제는 여기에서 확인할 수 있습니다.
-
⌨️ Keyboard Interface
-
🖱️ Mouse Interface
-
⌨️ Keyboard Example
-
🖱️ Mouse Example