/// <summary> /// Returns read key as a Virtual Key /// </summary> /// <returns>Virtual Key</returns> public VirtualKeys ReadAsVirtualKey() { int a = APICall._getch(); if (a == 0 || a == 0xE0) { int b = APICall._getch(); b = (int)APICall.MapVirtualKey((uint)b, 1); return((VirtualKeys)b); } StringBuilder sb = new StringBuilder(); APICall.GetKeyboardLayoutName(sb); IntPtr ptr = APICall.LoadKeyboardLayout(sb.ToString(), 1); char c = (char)APICall.VkKeyScanEx((char)a, ptr); APICall.UnloadKeyboardLayout(ptr); return((VirtualKeys)c); }
/// <summary> /// Returns a char based on the key pressed provided /// </summary> /// <returns>Char</returns> public char ReadKey() { return((char)APICall._getch()); }