键值

  1. #region bVk参数 常量定义
  2. public const byte vbKeyLButton = 0x1; // 鼠标左键
  3. public const byte vbKeyRButton = 0x2; // 鼠标右键
  4. public const byte vbKeyCancel = 0x3; // CANCEL 键
  5. public const byte vbKeyMButton = 0x4; // 鼠标中键
  6. public const byte vbKeyBack = 0x8; // BACKSPACE 键
  7. public const byte vbKeyTab = 0x9; // TAB 键
  8. public const byte vbKeyClear = 0xC; // CLEAR 键
  9. public const byte vbKeyReturn = 0xD; // ENTER 键
  10. public const byte vbKeyShift = 0x10; // SHIFT 键
  11. public const byte vbKeyControl = 0x11; // CTRL 键
  12. public const byte vbKeyAlt = 18; // Alt 键 (键码18)
  13. public const byte vbKeyMenu = 0x12; // MENU 键
  14. public const byte vbKeyPause = 0x13; // PAUSE 键
  15. public const byte vbKeyCapital = 0x14; // CAPS LOCK 键
  16. public const byte vbKeyEscape = 0x1B; // ESC 键
  17. public const byte vbKeySpace = 0x20; // SPACEBAR 键
  18. public const byte vbKeyPageUp = 0x21; // PAGE UP 键
  19. public const byte vbKeyEnd = 0x23; // End 键
  20. public const byte vbKeyHome = 0x24; // HOME 键
  21. public const byte vbKeyLeft = 0x25; // LEFT ARROW 键
  22. public const byte vbKeyUp = 0x26; // UP ARROW 键
  23. public const byte vbKeyRight = 0x27; // RIGHT ARROW 键
  24. public const byte vbKeyDown = 0x28; // DOWN ARROW 键
  25. public const byte vbKeySelect = 0x29; // Select 键
  26. public const byte vbKeyPrint = 0x2A; // PRINT SCREEN 键
  27. public const byte vbKeyExecute = 0x2B; // EXECUTE 键
  28. public const byte vbKeySnapshot = 0x2C; // SNAPSHOT 键
  29. public const byte vbKeyDelete = 0x2E; // Delete 键
  30. public const byte vbKeyHelp = 0x2F; // HELP 键
  31. public const byte vbKeyNumlock = 0x90; // NUM LOCK 键
  32. //常用键 字母键A到Z
  33. public const byte vbKeyA = 65;
  34. public const byte vbKeyB = 66;
  35. public const byte vbKeyC = 67;
  36. public const byte vbKeyD = 68;
  37. public const byte vbKeyE = 69;
  38. public const byte vbKeyF = 70;
  39. public const byte vbKeyG = 71;
  40. public const byte vbKeyH = 72;
  41. public const byte vbKeyI = 73;
  42. public const byte vbKeyJ = 74;
  43. public const byte vbKeyK = 75;
  44. public const byte vbKeyL = 76;
  45. public const byte vbKeyM = 77;
  46. public const byte vbKeyN = 78;
  47. public const byte vbKeyO = 79 ;
  48. public const byte vbKeyP = 80 ;
  49. public const byte vbKeyQ = 81 ;
  50. public const byte vbKeyR = 82 ;
  51. public const byte vbKeyS = 83 ;
  52. public const byte vbKeyT = 84 ;
  53. public const byte vbKeyU = 85 ;
  54. public const byte vbKeyV = 86 ;
  55. public const byte vbKeyW = 87 ;
  56. public const byte vbKeyX = 88 ;
  57. public const byte vbKeyY = 89 ;
  58. public const byte vbKeyZ = 90 ;
  59. //数字键盘0到9
  60. public const byte vbKey0 = 48 ; // 0 键
  61. public const byte vbKey1 = 49 ; // 1 键
  62. public const byte vbKey2 = 50 ; // 2 键
  63. public const byte vbKey3 = 51 ; // 3 键
  64. public const byte vbKey4 = 52 ; // 4 键
  65. public const byte vbKey5 = 53 ; // 5 键
  66. public const byte vbKey6 = 54 ; // 6 键
  67. public const byte vbKey7 = 55 ; // 7 键
  68. public const byte vbKey8 = 56 ; // 8 键
  69. public const byte vbKey9 = 57 ; // 9 键
  70. public const byte vbKeyNumpad0 = 0x60 ; //0 键
  71. public const byte vbKeyNumpad1 = 0x61 ; //1 键
  72. public const byte vbKeyNumpad2 = 0x62 ; //2 键
  73. public const byte vbKeyNumpad3 = 0x63 ; //3 键
  74. public const byte vbKeyNumpad4 = 0x64 ; //4 键
  75. public const byte vbKeyNumpad5 = 0x65 ; //5 键
  76. public const byte vbKeyNumpad6 = 0x66 ; //6 键
  77. public const byte vbKeyNumpad7 = 0x67 ; //7 键
  78. public const byte vbKeyNumpad8 = 0x68 ; //8 键
  79. public const byte vbKeyNumpad9 = 0x69 ; //9 键
  80. public const byte vbKeyMultiply = 0x6A ; // MULTIPLICATIONSIGN(*)键
  81. public const byte vbKeyAdd = 0x6B ; // PLUS SIGN(+) 键
  82. public const byte vbKeySeparator = 0x6C ; // ENTER 键
  83. public const byte vbKeySubtract = 0x6D ; // MINUS SIGN(-) 键
  84. public const byte vbKeyDecimal = 0x6E ; // DECIMAL POINT(.) 键
  85. public const byte vbKeyDivide = 0x6F ; // DIVISION SIGN(/) 键
  86. //F1到F12按键
  87. public const byte vbKeyF1 = 0x70 ; //F1 键
  88. public const byte vbKeyF2 = 0x71 ; //F2 键
  89. public const byte vbKeyF3 = 0x72 ; //F3 键
  90. public const byte vbKeyF4 = 0x73 ; //F4 键
  91. public const byte vbKeyF5 = 0x74 ; //F5 键
  92. public const byte vbKeyF6 = 0x75 ; //F6 键
  93. public const byte vbKeyF7 = 0x76 ; //F7 键
  94. public const byte vbKeyF8 = 0x77 ; //F8 键
  95. public const byte vbKeyF9 = 0x78 ; //F9 键
  96. public const byte vbKeyF10 = 0x79 ; //F10 键
  97. public const byte vbKeyF11 = 0x7A ; //F11 键
  98. public const byte vbKeyF12 = 0x7B ; //F12 键
  99. #endregion

win32api

  1. #region 引用win32api方法
  2. /// <summary>
  3. /// 导入模拟键盘的方法
  4. /// </summary>
  5. /// <param name="bVk" >按键的虚拟键值</param>
  6. /// <param name= "bScan" >扫描码,一般不用设置,用0代替就行</param>
  7. /// <param name= "dwFlags" >选项标志:0:表示按下,2:表示松开</param>
  8. /// <param name= "dwExtraInfo">一般设置为0</param>
  9. [DllImport("user32.dll")]
  10. public static extern void keybd_event(byte bVk, byte bScan, int dwFlags, int dwExtraInfo);
  11. #endregion

方法

  1. /// <summary>
  2. /// 默认按下ctrl+shift切换输入法
  3. /// </summary>
  4. /// <param name= sender ></param>
  5. /// <param name= e ></param>
  6. private void button1_Click(object sender, EventArgs e)
  7. {
  8. //模拟按下ctrl键
  9. keybd_event(vbKeyControl, 0,0,0);
  10. //模拟按下shift键
  11. keybd_event(vbKeyShift, 0, 0, 0);
  12. //松开按键ctrl
  13. keybd_event(vbKeyControl, 0, 2, 0);
  14. //松开按键shift
  15. keybd_event(vbKeyShift, 0, 2, 0);
  16. }
  17. /// <summary>
  18. /// 使用QQ的截图快捷按键(前提:开启QQ)
  19. /// </summary>
  20. /// <param name="sender"></param>
  21. /// <param name="e"></param>
  22. private void button2_Click(object sender, EventArgs e)
  23. {
  24. //模拟按下ctrl键
  25. keybd_event(vbKeyControl, 0, 0, 0);
  26. //模拟按下Alt键
  27. keybd_event(vbKeyAlt, 0, 0, 0);
  28. //模拟按下A键
  29. keybd_event(vbKeyA, 0, 0, 0);
  30. //模拟松开ctrl键
  31. keybd_event(vbKeyControl, 0, 2, 0);
  32. //模拟松开Alt键
  33. keybd_event(vbKeyAlt, 0, 2, 0);
  34. //模拟松开A键
  35. keybd_event(vbKeyA, 0, 2, 0);
  36. }
  37. /// <summary>
  38. /// 模拟 Alt+F4按键 关闭窗体程序
  39. /// </summary>
  40. /// <param name="sender"></param>
  41. /// <param name="e"></param>
  42. private void button3_Click(object sender, EventArgs e)
  43. {
  44. //模拟按下Alt键
  45. keybd_event(vbKeyAlt, 0, 0, 0);
  46. //模拟按下F4键
  47. keybd_event(vbKeyF4, 0, 0, 0);
  48. //松开按键Alt
  49. keybd_event(vbKeyAlt, 0, 2, 0);
  50. //松开按键F4
  51. keybd_event(vbKeyF4, 0, 2, 0);
  52. }
  53. /// <summary>
  54. /// 模拟Ctrl+Alt+Z按键 显示已最小化QQ界面
  55. /// </summary>
  56. /// <param name="sender"></param>
  57. /// <param name="e"></param>
  58. private void button4_Click(object sender, EventArgs e)
  59. {
  60. //模拟按下ctrl键
  61. keybd_event(vbKeyControl, 0, 0, 0);
  62. //模拟按下Alt键
  63. keybd_event(vbKeyAlt, 0, 0, 0);
  64. //模拟按下Z键
  65. keybd_event(vbKeyZ, 0, 0, 0);
  66. //模拟松开ctrl键
  67. keybd_event(vbKeyControl, 0, 2, 0);
  68. //模拟松开Alt键
  69. keybd_event(vbKeyAlt, 0, 2, 0);
  70. //模拟松开Z键
  71. keybd_event(vbKeyZ, 0, 2, 0);
  72. }