Example #1
0
        public static KeyStates GetKeyState(VKcodes key)
        {
            var val = Win32Api.GetKeyState((ushort)key);
            var ret = KeyStates.None;

            if ((val & 0x8000) == 0x8000)
            {
                ret |= KeyStates.Down;
            }

            if ((val & 1) == 1)
            {
                ret |= KeyStates.Toggled;
            }

            return(ret);
        }
Example #2
0
 public static bool IsKeyDown(VKcodes key)
 {
     return((int)(GetKeyState(key) & KeyStates.Down) == 1);
 }
Example #3
0
        public static string VKCodeToDisplay(VKcodes code)
        {
            switch (code)
            {
            default: return(null);

            // 数字键
            case VKcodes.VK_0: return("数字键 [ 0 ]");

            case VKcodes.VK_1: return("数字键 [ 1 ]");

            case VKcodes.VK_2: return("数字键 [ 2 ]");

            case VKcodes.VK_3: return("数字键 [ 3 ]");

            case VKcodes.VK_4: return("数字键 [ 4 ]");

            case VKcodes.VK_5: return("数字键 [ 5 ]");

            case VKcodes.VK_6: return("数字键 [ 6 ]");

            case VKcodes.VK_7: return("数字键 [ 7 ]");

            case VKcodes.VK_8: return("数字键 [ 8 ]");

            case VKcodes.VK_9: return("数字键 [ 9 ]");

            // 字母键
            case VKcodes.VK_A: return("字母键 [ A ]");

            case VKcodes.VK_B: return("字母键 [ B ]");

            case VKcodes.VK_C: return("字母键 [ C ]");

            case VKcodes.VK_D: return("字母键 [ D ]");

            case VKcodes.VK_E: return("字母键 [ E ]");

            case VKcodes.VK_F: return("字母键 [ F ]");

            case VKcodes.VK_G: return("字母键 [ G ]");

            case VKcodes.VK_H: return("字母键 [ H ]");

            case VKcodes.VK_I: return("字母键 [ I ]");

            case VKcodes.VK_J: return("字母键 [ J ]");

            case VKcodes.VK_K: return("字母键 [ K ]");

            case VKcodes.VK_L: return("字母键 [ L ]");

            case VKcodes.VK_M: return("字母键 [ M ]");

            case VKcodes.VK_N: return("字母键 [ N ]");

            case VKcodes.VK_O: return("字母键 [ O ]");

            case VKcodes.VK_P: return("字母键 [ P ]");

            case VKcodes.VK_Q: return("字母键 [ Q ]");

            case VKcodes.VK_R: return("字母键 [ R ]");

            case VKcodes.VK_S: return("字母键 [ S ]");

            case VKcodes.VK_T: return("字母键 [ T ]");

            case VKcodes.VK_U: return("字母键 [ U ]");

            case VKcodes.VK_V: return("字母键 [ V ]");

            case VKcodes.VK_W: return("字母键 [ W ]");

            case VKcodes.VK_X: return("字母键 [ X ]");

            case VKcodes.VK_Y: return("字母键 [ Y ]");

            case VKcodes.VK_Z: return("字母键 [ Z ]");

            // 功能键
            case VKcodes.VK_F1:  return("功能键 [ F1 ]");

            case VKcodes.VK_F2:  return("功能键 [ F2 ]");

            case VKcodes.VK_F3:  return("功能键 [ F3 ]");

            case VKcodes.VK_F4:  return("功能键 [ F4 ]");

            case VKcodes.VK_F5:  return("功能键 [ F5 ]");

            case VKcodes.VK_F6:  return("功能键 [ F6 ]");

            case VKcodes.VK_F7:  return("功能键 [ F7 ]");

            case VKcodes.VK_F8:  return("功能键 [ F8 ]");

            case VKcodes.VK_F9:  return("功能键 [ F9 ]");

            case VKcodes.VK_F10: return("功能键 [ F10 ]");

            case VKcodes.VK_F11: return("功能键 [ F11 ]");

            case VKcodes.VK_F12: return("功能键 [ F12 ]");

            case VKcodes.VK_F13: return("功能键 [ F13 ]");

            case VKcodes.VK_F14: return("功能键 [ F14 ]");

            case VKcodes.VK_F15: return("功能键 [ F15 ]");

            // 小键盘
            case VKcodes.VK_NUMPAD1: return("小键盘 [ 1 ]");

            case VKcodes.VK_NUMPAD2: return("小键盘 [ 2 ]");

            case VKcodes.VK_NUMPAD3: return("小键盘 [ 3 ]");

            case VKcodes.VK_NUMPAD4: return("小键盘 [ 4 ]");

            case VKcodes.VK_NUMPAD5: return("小键盘 [ 5 ]");

            case VKcodes.VK_NUMPAD6: return("小键盘 [ 6 ]");

            case VKcodes.VK_NUMPAD7: return("小键盘 [ 7 ]");

            case VKcodes.VK_NUMPAD8: return("小键盘 [ 8 ]");

            case VKcodes.VK_NUMPAD9: return("小键盘 [ 9 ]");

            case VKcodes.VK_NUMPAD0: return("小键盘 [ 0 ]");

            case VKcodes.VK_DECIMAL:     return("小键盘 [ . ]");

            case VKcodes.VK_ADD:         return("小键盘 [ + ]");

            case VKcodes.VK_SUBTRACT:    return("小键盘 [ - ]");

            case VKcodes.VK_MULTIPLY:    return("小键盘 [ * ]");

            case VKcodes.VK_DIVIDE:      return("小键盘 [ / ]");

            // 方向键
            case VKcodes.VK_UP:    return("方向键 [ ↑ ]");

            case VKcodes.VK_DOWN:  return("方向键 [ ↓ ]");

            case VKcodes.VK_LEFT:  return("方向键 [ ← ]");

            case VKcodes.VK_RIGHT: return("方向键 [ → ]");

            // 特殊键
            case VKcodes.VK_ESCAPE:    return("功能键 [ Esc ]");

            case VKcodes.VK_BACK:      return("功能键 [ BackSpace ]");

            case VKcodes.VK_SPACE:     return("功能键 [ Space ]");

            case VKcodes.VK_RETURN:    return("功能键 [ Enter ]");

            case VKcodes.VK_TAB:       return("功能键 [ Tab ]");

            case VKcodes.VK_CAPITAL:   return("功能键 [ CapsLock ]");

            case VKcodes.VK_LSHIFT:    return("功能键 [ L_Shift ]");

            case VKcodes.VK_RSHIFT:    return("功能键 [ R_Shift ]");

            case VKcodes.VK_LCONTROL:  return("功能键 [ L_Ctrl ]");

            case VKcodes.VK_RCONTROL:  return("功能键 [ R_Ctrl ]");

            case VKcodes.VK_LMENU:     return("功能键 [ L_Alt ]");

            case VKcodes.VK_RMENU:     return("功能键 [ R_Alt ]");

            case VKcodes.VK_INSERT:    return("功能键 [ Insert ]");

            case VKcodes.VK_DELETE:    return("功能键 [ Delete ]");

            case VKcodes.VK_HOME:      return("功能键 [ Home ]");

            case VKcodes.VK_END:       return("功能键 [ End ]");

            case VKcodes.VK_PAUSE:     return("功能键 [ Pause ]");

            case VKcodes.VK_PRIOR:     return("功能键 [ PgUp ]");

            case VKcodes.VK_NEXT:      return("功能键 [ PgDn ]");
            }
        }