赞
踩
项目中添加这两个类KeyBord ,MoseKeyboard(文末)
对于有些软件获取不到具体控件的句柄,那就只能用鼠标键盘操作了
比如想执行一个粘贴操作,可以这样写,通常需要在新起的线程中写,不然复制到粘贴板那会报错
- Clipboard.SetDataObject("123456", true);//复制到粘贴板
-
- MoseKeyboard.ExcuteCmd("1000,Mouse,1597,442,LeftButtonClick"); //点击文本框
-
- MoseKeyboard.ExcuteCmd("1000,KeyBord,Control+V");//粘贴
起线程传入数组参数示例
- string[] array = new string[]
- {
- "100,Mouse,1017,242,LeftButtonClick",
- "1000,Mouse,891,514,RightButtonClick"
- };
- Thread ThreadPause = new Thread(new ParameterizedThreadStart(RunTest));
- ThreadPause.Start(array);
-
- private void RunTest(object obj)
- {
- string[] strArray = (string[])obj;
- }
传入的string参数如为分别为,时间间隔,操作类型,屏幕坐标xy,操作,
这里用按键精灵显示(我的资源中有https://download.csdn.net/download/m0_37137902/14900615)
通常脚本需要截取字符串,比如截取 ABC中A和C之间的B,可以用下面这个方法
string str = GetStringOfStartAndEnd()("A", "B", "ABC");
- public Func<string, string, string, string> GetStringOfStartAndEnd()
- {
- return (x, y, z) =>
- {
- string str = string.Empty;
- int start = z.IndexOf(x);
- int end = z.IndexOf(y);
- if (end > start)
- {
- str = z.Substring(start + x.Length, end - start - x.Length);
- }
- return str;
- };
- }
直接取到末尾用这个方法,比如想得到abcd中,b以后的字段(当然这两个方法没啥难度,经常用就写到这方便后面复制)
string str = GetStringOfStartAndEndHttp()("abcd", "b");
- public Func<string, string, string> GetStringOfStartAndEndHttp()
- {
- return (x, y) =>
- {
- string str = string.Empty;
- int start = x.IndexOf(y) + y.Length;
- int length = x.Length - start;
- str = x.Substring(start, length);
- return str;
- };
- }
脚本通常也需要获取url返回的值
-
- public string HttpGet(string url)
- {
- Encoding encoding = Encoding.UTF8;
- HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
- request.Method = "GET";
- request.Accept = "text/html, application/xhtml+xml, */*";
- request.ContentType = "application/json";
-
- HttpWebResponse response = (HttpWebResponse)request.GetResponse();
- using (StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8))
- {
- return reader.ReadToEnd();
- }
- }
经常会把执行命令放在txt里,可以用数组的形式读取出来
string[] array=File.ReadAllLines(Application.StartupPath + @"\mytxt.txt", Encoding.Default);
按键枚举类
- public enum KeyBord : int
- {
- // 摘要:
- // 从键值提取修饰符的位屏蔽。
- Modifiers = -65536,
- //
- // 摘要:
- // Backspace 键。
- Backspace = 8,
- //
- // 摘要:
- // Tab 键。
- Tab = 9,
- //
- // 摘要:
- // LINEFEED 键。
- LineFeed = 10,
- //
- // 摘要:
- // Clear 键。
- Clear = 12,
- //
- // 摘要:
- // Enter 键。
- Enter = 13,
- //
- // 摘要:
- // Return 键。
- Return = 13,
- //
- // 摘要:
- // Shift 键。
- ShiftKey = 16,
- //
- // 摘要:
- // Ctrl 键。
- ControlKey = 17,
- //
- // 摘要:
- // Alt 键。
- Menu = 18,
- //
- // 摘要:
- // Pause 键。
- Pause = 19,
- //
- // 摘要:
- // Caps Lock 键。
- CapsLock = 20,
- //
- // 摘要:
- // Caps Lock 键。
- Capital = 20,
- //
- // 摘要:
- // IME Kana 模式键。
- KanaMode = 21,
- //
- // 摘要:
- // IME Hanguel 模式键。(为了保持兼容性而设置;使用 HangulMode)
- HanguelMode = 21,
- //
- // 摘要:
- // IME Hangul 模式键。
- HangulMode = 21,
- //
- // 摘要:
- // IME Junja 模式键。
- JunjaMode = 23,
- //
- // 摘要:
- // IME 最终模式键。
- FinalMode = 24,
- //
- // 摘要:
- // IME Kanji 模式键。
- KanjiMode = 25,
- //
- // 摘要:
- // IME Hanja 模式键。
- HanjaMode = 25,
- //
- // 摘要:
- // Esc 键。
- Escape = 27,
- //
- // 摘要:
- // IME 转换键。
- IMEConvert = 28,
- //
- // 摘要:
- // IME 非转换键。
- IMENonconvert = 29,
- //
- // 摘要:
- // IME 接受键。已过时,请改用 System.Windows.Forms.Keys.IMEAccept。
- IMEAceept = 30,
- //
- // 摘要:
- // IME 接受键,替换 System.Windows.Forms.Keys.IMEAceept。
- IMEAccept = 30,
- //
- // 摘要:
- // IME 模式更改键。
- IMEModeChange = 31,
- //
- // 摘要:
- // 空格键。
- Space = 32,
- //
- // 摘要:
- // Page Up 键。
- Prior = 33,
- //
- // 摘要:
- // Page Up 键。
- PageUp = 33,
- //
- // 摘要:
- // Page Down 键。
- Next = 34,
- //
- // 摘要:
- // Page Down 键。
- PageDown = 34,
- //
- // 摘要:
- // End 键。
- End = 35,
- //
- // 摘要:
- // Home 键。
- Home = 36,
- //
- // 摘要:
- // 向左键。
- Left = 37,
- //
- // 摘要:
- // 向上键。
- Up = 38,
- //
- // 摘要:
- // 向右键。
- Right = 39,
- //
- // 摘要:
- // 向下键。
- Down = 40,
- //
- // 摘要:
- // Select 键。
- Select = 41,
- //
- // 摘要:
- // Print 键。
- Print = 42,
- //
- // 摘要:
- // EXECUTE 键。
- Execute = 43,
- //
- // 摘要:
- // Print Screen 键。
- PrintScreen = 44,
- //
- // 摘要:
- // Print Screen 键。
- Snapshot = 44,
- //
- // 摘要:
- // Ins 键。
- Insert = 45,
- //
- // 摘要:
- // DeL 键。
- Delete = 46,
- //
- // 摘要:
- // Help 键。
- Help = 47,
- //
- // 摘要:
- // 0 键。
- D0 = 48,
- //
- // 摘要:
- // 1 键。
- D1 = 49,
- //
- // 摘要:
- // 2 键。
- D2 = 50,
- //
- // 摘要:
- // 3 键。
- D3 = 51,
- //
- // 摘要:
- // 4 键。
- D4 = 52,
- //
- // 摘要:
- // 5 键。
- D5 = 53,
- //
- // 摘要:
- // 6 键。
- D6 = 54,
- //
- // 摘要:
- // 7 键。
- D7 = 55,
- //
- // 摘要:
- // 8 键。
- D8 = 56,
- //
- // 摘要:
- // 9 键。
- D9 = 57,
- //
- // 摘要:
- // A 键。
- A = 65,
- //
- // 摘要:
- // B 键。
- B = 66,
- //
- // 摘要:
- // C 键。
- C = 67,
- //
- // 摘要:
- // D 键。
- D = 68,
- //
- // 摘要:
- // E 键。
- E = 69,
- //
- // 摘要:
- // F 键。
- F = 70,
- //
- // 摘要:
- // G 键。
- G = 71,
- //
- // 摘要:
- // H 键。
- H = 72,
- //
- // 摘要:
- // I 键。
- I = 73,
- //
- // 摘要:
- // J 键。
- J = 74,
- //
- // 摘要:
- // K 键。
- K = 75,
- //
- // 摘要:
- // L 键。
- L = 76,
- //
- // 摘要:
- // M 键。
- M = 77,
- //
- // 摘要:
- // N 键。
- N = 78,
- //
- // 摘要:
- // O 键。
- O = 79,
- //
- // 摘要:
- // P 键。
- P = 80,
- //
- // 摘要:
- // Q 键。
- Q = 81,
- //
- // 摘要:
- // R 键。
- R = 82,
- //
- // 摘要:
- // S 键。
- S = 83,
- //
- // 摘要:
- // T 键。
- T = 84,
- //
- // 摘要:
- // U 键。
- U = 85,
- //
- // 摘要:
- // V 键。
- V = 86,
- //
- // 摘要:
- // W 键。
- W = 87,
- //
- // 摘要:
- // X 键。
- X = 88,
- //
- // 摘要:
- // Y 键。
- Y = 89,
- //
- // 摘要:
- // Z 键。
- Z = 90,
- //
- // 摘要:
- // 左 Windows 徽标键(Microsoft Natural Keyboard,人体工程学键盘)。
- LWin = 91,
- //
- // 摘要:
- // 右 Windows 徽标键(Microsoft Natural Keyboard,人体工程学键盘)。
- RWin = 92,
- //
- // 摘要:
- // 应用程序键(Microsoft Natural Keyboard,人体工程学键盘)。
- Apps = 93,
- //
- // 摘要:
- // 计算机睡眠键。
- Sleep = 95,
- //
- // 摘要:
- // 数字键盘上的 0 键。
- NumPad0 = 96,
- //
- // 摘要:
- // 数字键盘上的 1 键。
- NumPad1 = 97,
- //
- // 摘要:
- // 数字键盘上的 2 键。
- NumPad2 = 98,
- //
- // 摘要:
- // 数字键盘上的 3 键。
- NumPad3 = 99,
- //
- // 摘要:
- // 数字键盘上的 4 键。
- NumPad4 = 100,
- //
- // 摘要:
- // 数字键盘上的 5 键。
- NumPad5 = 101,
- //
- // 摘要:
- // 数字键盘上的 6 键。
- NumPad6 = 102,
- //
- // 摘要:
- // 数字键盘上的 7 键。
- NumPad7 = 103,
- //
- // 摘要:
- // 数字键盘上的 8 键。
- NumPad8 = 104,
- //
- // 摘要:
- // 数字键盘上的 9 键。
- NumPad9 = 105,
- //
- // 摘要:
- // 乘号键。
- Multiply = 106,
- //
- // 摘要:
- // 加号键。
- Add = 107,
- //
- // 摘要:
- // 分隔符键。
- Separator = 108,
- //
- // 摘要:
- // 减号键。
- Subtract = 109,
- //
- // 摘要:
- // 句点键。
- Decimal = 110,
- //
- // 摘要:
- // 除号键。
- Divide = 111,
- //
- // 摘要:
- // F1 键。
- F1 = 112,
- //
- // 摘要:
- // F2 键。
- F2 = 113,
- //
- // 摘要:
- // F3 键。
- F3 = 114,
- //
- // 摘要:
- // F4 键。
- F4 = 115,
- //
- // 摘要:
- // F5 键。
- F5 = 116,
- //
- // 摘要:
- // F6 键。
- F6 = 117,
- //
- // 摘要:
- // F7 键。
- F7 = 118,
- //
- // 摘要:
- // F8 键。
- F8 = 119,
- //
- // 摘要:
- // F9 键。
- F9 = 120,
- //
- // 摘要:
- // F10 键。
- F10 = 121,
- //
- // 摘要:
- // F11 键。
- F11 = 122,
- //
- // 摘要:
- // F12 键。
- F12 = 123,
- //
- // 摘要:
- // F13 键。
- F13 = 124,
- //
- // 摘要:
- // F14 键。
- F14 = 125,
- //
- // 摘要:
- // F15 键。
- F15 = 126,
- //
- // 摘要:
- // F16 键。
- F16 = 127,
- //
- // 摘要:
- // F17 键。
- F17 = 128,
- //
- // 摘要:
- // F18 键。
- F18 = 129,
- //
- // 摘要:
- // F19 键。
- F19 = 130,
- //
- // 摘要:
- // F20 键。
- F20 = 131,
- //
- // 摘要:
- // F21 键。
- F21 = 132,
- //
- // 摘要:
- // F22 键。
- F22 = 133,
- //
- // 摘要:
- // F23 键。
- F23 = 134,
- //
- // 摘要:
- // F24 键。
- F24 = 135,
- //
- // 摘要:
- // Num Lock 键。
- NumLock = 144,
- //
- // 摘要:
- // Scroll Lock 键。
- Scroll = 145,
- //
- // 摘要:
- // 左 Shift 键。
- LShiftKey = 160,
- //
- // 摘要:
- // 右 Shift 键。
- RShiftKey = 161,
- //
- // 摘要:
- // 左 Ctrl 键。
- LControlKey = 162,
- //
- // 摘要:
- // 右 Ctrl 键。
- RControlKey = 163,
- //
- // 摘要:
- // 左 Alt 键。
- LMenu = 164,
- //
- // 摘要:
- // 右 Alt 键。
- RMenu = 165,
- //
- // 摘要:
- // 浏览器后退键(Windows 2000 或更高版本)。
- BrowserBack = 166,
- //
- // 摘要:
- // 浏览器前进键(Windows 2000 或更高版本)。
- BrowserForward = 167,
- //
- // 摘要:
- // 浏览器刷新键(Windows 2000 或更高版本)。
- BrowserRefresh = 168,
- //
- // 摘要:
- // 浏览器停止键(Windows 2000 或更高版本)。
- BrowserStop = 169,
- //
- // 摘要:
- // 浏览器搜索键(Windows 2000 或更高版本)。
- BrowserSearch = 170,
- //
- // 摘要:
- // 浏览器收藏夹键(Windows 2000 或更高版本)。
- BrowserFavorites = 171,
- //
- // 摘要:
- // 浏览器主页键(Windows 2000 或更高版本)。
- BrowserHome = 172,
- //
- // 摘要:
- // 静音键(Windows 2000 或更高版本)。
- VolumeMute = 173,
- //
- // 摘要:
- // 减小音量键(Windows 2000 或更高版本)。
- VolumeDown = 174,
- //
- // 摘要:
- // 增大音量键(Windows 2000 或更高版本)。
- VolumeUp = 175,
- //
- // 摘要:
- // 媒体下一曲目键(Windows 2000 或更高版本)。
- MediaNextTrack = 176,
- //
- // 摘要:
- // 媒体上一曲目键(Windows 2000 或更高版本)。
- MediaPreviousTrack = 177,
- //
- // 摘要:
- // 媒体停止键(Windows 2000 或更高版本)。
- MediaStop = 178,
- //
- // 摘要:
- // 媒体播放暂停键(Windows 2000 或更高版本)。
- MediaPlayPause = 179,
- //
- // 摘要:
- // 启动邮件键(Windows 2000 或更高版本)。
- LaunchMail = 180,
- //
- // 摘要:
- // 选择媒体键(Windows 2000 或更高版本)。
- SelectMedia = 181,
- //
- // 摘要:
- // 启动应用程序一键(Windows 2000 或更高版本)。
- LaunchApplication1 = 182,
- //
- // 摘要:
- // 启动应用程序二键(Windows 2000 或更高版本)。
- LaunchApplication2 = 183,
- //
- // 摘要:
- // OEM 1 键。
- Oem1 = 186,
- //
- // 摘要:
- // 美式标准键盘上的 OEM 分号键(Windows 2000 或更高版本)。
- OemSemicolon = 186,
- //
- // 摘要:
- // 任何国家/地区键盘上的 OEM 加号键(Windows 2000 或更高版本)。
- Oemplus = 187,
- //
- // 摘要:
- // 任何国家/地区键盘上的 OEM 逗号键(Windows 2000 或更高版本)。
- Oemcomma = 188,
- //
- // 摘要:
- // 任何国家/地区键盘上的 OEM 减号键(Windows 2000 或更高版本)。
- OemMinus = 189,
- //
- // 摘要:
- // 任何国家/地区键盘上的 OEM 句点键(Windows 2000 或更高版本)。
- OemPeriod = 190,
- //
- // 摘要:
- // 美式标准键盘上的 OEM 问号键(Windows 2000 或更高版本)。
- OemQuestion = 191,
- //
- // 摘要:
- // OEM 2 键。
- Oem2 = 191,
- //
- // 摘要:
- // 美式标准键盘上的 OEM 波形符键(Windows 2000 或更高版本)。
- Oemtilde = 192,
- //
- // 摘要:
- // OEM 3 键。
- Oem3 = 192,
- //
- // 摘要:
- // OEM 4 键。
- Oem4 = 219,
- //
- // 摘要:
- // 美式标准键盘上的 OEM 左括号键(Windows 2000 或更高版本)。
- OemOpenBrackets = 219,
- //
- // 摘要:
- // 美式标准键盘上的 OEM 管道键(Windows 2000 或更高版本)。
- OemPipe = 220,
- //
- // 摘要:
- // OEM 5 键。
- Oem5 = 220,
- //
- // 摘要:
- // OEM 6 键。
- Oem6 = 221,
- //
- // 摘要:
- // 美式标准键盘上的 OEM 右括号键(Windows 2000 或更高版本)。
- OemCloseBrackets = 221,
- //
- // 摘要:
- // OEM 7 键。
- Oem7 = 222,
- //
- // 摘要:
- // 美式标准键盘上的 OEM 单/双引号键(Windows 2000 或更高版本)。
- OemQuotes = 222,
- //
- // 摘要:
- // OEM 8 键。
- Oem8 = 223,
- //
- // 摘要:
- // OEM 102 键。
- Oem102 = 226,
- //
- // 摘要:
- // RT 102 键的键盘上的 OEM 尖括号或反斜杠键(Windows 2000 或更高版本)。
- OemBackslash = 226,
- //
- // 摘要:
- // Process Key 键。
- ProcessKey = 229,
- //
- // 摘要:
- // 用于将 Unicode 字符当作键击传递。Packet 键值是用于非键盘输入法的 32 位虚拟键值的低位字。
- Packet = 231,
- //
- // 摘要:
- // Attn 键。
- Attn = 246,
- //
- // 摘要:
- // Crsel 键。
- Crsel = 247,
- //
- // 摘要:
- // Exsel 键。
- Exsel = 248,
- //
- // 摘要:
- // ERASE EOF 键。
- EraseEof = 249,
- //
- // 摘要:
- // Play 键。
- Play = 250,
- //
- // 摘要:
- // Zoom 键。
- Zoom = 251,
- //
- // 摘要:
- // 保留以备将来使用的常数。
- NoName = 252,
- //
- // 摘要:
- // PA1 键。
- Pa1 = 253,
- //
- // 摘要:
- // Clear 键。
- OemClear = 254,
- //
- // 摘要:
- // 从键值提取键代码的位屏蔽。
- KeyCode = 65535,
- //
- // 摘要:
- // Shift 修改键。
- Shift = 65536,
- //
- // 摘要:
- // Ctrl 修改键。
- Control = 131072,
- //
- // 摘要:
- // Alt 修改键。
- Alt = 262144,
- }

键盘操作MoseKeyboard类
- class MoseKeyboard
- {
- [DllImport("user32")]
- public static extern void mouse_event(int dwFlags, int dx, int dy, int dwData, int dwExtraInfo);
- [DllImport("user32.dll")]
- static extern bool SetCursorPos(int X, int Y);
-
- const uint KEYEVENTF_EXTENDEDKEY = 0x1;
- const uint KEYEVENTF_KEYUP = 0x2;
- [DllImport("user32.dll")]
- static extern short GetKeyState(int nVirtKey);
- [DllImport("user32.dll")]
- static extern void keybd_event(
- byte bVk,
- byte bScan,
- uint dwFlags,
- uint dwExtraInfo
- );
- public static int x = 0;
- public static int y = 0;
-
- public enum VirtualKeys : byte
- {
- VK_NUMLOCK = 0x90, //数字锁定键
- VK_SCROLL = 0x91, //滚动锁定
- VK_CAPITAL = 0x14, //大小写锁定
- VK_A = 62,
- VK_LEFT = 37, //左箭头
- VK_UP = 38,//上箭头
- VK_RIGHT = 39,// 右箭头
- VK_DOWN = 40,// 下箭头
- VK_RETURN = 13, //回车
- VK_DELETE = Keys.Delete
-
-
- }
-
- private enum MouseOper : byte
- {
- MOVE = 0x0001, /* mouse move */
- LEFTDOWN = 0x0002, /* left button down */
- LEFTUP = 0x0004, /* left button up */
- RIGHTDOWN = 0x0008, /* right button down */
- RIGHTUP = 0x0010,
- }
-
-
- public static bool GetState(KeyBord Key)
- {
- return (GetKeyState((int)Key) == 1);
- }
- private static void SetState(KeyBord Key, bool State)
- {
- if (State != GetState(Key))
- {
- keybd_event((byte)Key, 0x45, KEYEVENTF_EXTENDEDKEY | 0, 0);
- keybd_event((byte)Key, 0x45, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP, 0);
- }
- }
-
-
- public static void LeftButtonClick(int x, int y)//左键单击
- {
- SetCurPos(x, y);
- mouse_event((int)(MouseOper.LEFTDOWN | MouseOper.LEFTUP), 0, 0, 0, 0);
- }
- public static void LeftButtonDoubleClick(int x, int y)//左键双击
- {
- SetCurPos(x, y);
- mouse_event((int)(MouseOper.LEFTDOWN | MouseOper.LEFTUP), 0, 0, 0, 0);
- mouse_event((int)(MouseOper.LEFTDOWN | MouseOper.LEFTUP), 0, 0, 0, 0);
- }
- public static void RightButtonClick(int x, int y)//右键单击
- {
- SetCurPos(x, y);
- mouse_event((int)(MouseOper.RIGHTDOWN | MouseOper.RIGHTUP), 0, 0, 0, 0);
- }
- public static void SetCurPos(int x, int y)
- {
- SetCursorPos(x, y);
- }
-
- public static void PressKey(KeyBord key)//模拟按键按下和弹起
- {
- keybd_event((byte)key, 0x45, 0, 0);//按键按下
- // Simulate a key release
- keybd_event((byte)key, 0x45, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP, 0);//按键弹起
- }
- public static void Compositekey(KeyBord key1, KeyBord key2, KeyBord key3)
- {
- keybd_event((byte)key1, (byte)0, 0, 0);//key1按下
- keybd_event((byte)key1, (byte)0, 0, 0);//key2按下
- MoseKeyboard.PressKey(key3);//key3按下弹起
- keybd_event((byte)key2, (byte)0, KEYEVENTF_KEYUP, 0);//key2弹起
- keybd_event((byte)key1, (byte)0, KEYEVENTF_KEYUP, 0);//key1弹起
- }
- public static void Compositekey(KeyBord key1, KeyBord key2)
- {
- keybd_event((byte)key1, (byte)0, 0, 0);//key1按下
- MoseKeyboard.PressKey(key2);//key3按下弹起
- keybd_event((byte)key1, (byte)0, KEYEVENTF_KEYUP, 0);//key1弹起
- }
-
- public static bool ExcuteCmd(string cmd)//执行单行命令
- {
- if (cmd == "")
- return false;
- //cmd格式是:延时,类型,(鼠标X,Y),命令
- string[] str = cmd.Split(',');//分解命令
- if (str.Length < 3 || str.Length > 5)//命令是否正确
- return false;
- try
- {
- Thread.Sleep(int.Parse(str[0]));//延时操作
- if (str[1] == "KeyBord")//键盘操作
- {
- string[] keys = str[2].Split('+');//分解按键
- if (keys.Length == 1)//单个健按下
- {
- MoseKeyboard.PressKey(GetKeyByString(keys[0]));
- return true;
- }
- if (keys.Length == 2)//2个复合键按下
- {
- MoseKeyboard.Compositekey(GetKeyByString(keys[0]), GetKeyByString(keys[1]));
- return true;
- }
- if (keys.Length == 2)//3个复合键按下
- {
- MoseKeyboard.Compositekey(GetKeyByString(keys[0]), GetKeyByString(keys[1]), GetKeyByString(keys[2]));
- return true;
- }
- return false;
- }
- if (str[1] == "Mouse")//鼠标操作
- {
- if (str[4] == "LeftButtonClick")//左键单击
- {
- MoseKeyboard.LeftButtonClick(int.Parse(str[2]), int.Parse(str[3]));
- return true;
- }
- if (str[4] == "LeftButtonDoubleClick")//左键双击
- {
- MoseKeyboard.LeftButtonDoubleClick(int.Parse(str[2]), int.Parse(str[3]));
- return true;
- }
- if (str[4] == "RightButtonClick")//右键单击
- {
- MoseKeyboard.RightButtonClick(int.Parse(str[2]), int.Parse(str[3]));
- return true;
- }
- return false;
- }
- return false;
- }
- catch (Exception ex)
- {
- return false;
- }
- }
-
- public static KeyBord GetKeyByString(string key)
- {
- if (key == "A")
- return KeyBord.A;
- if (key == "B")
- return KeyBord.B;
- if (key == "C")
- return KeyBord.C;
- if (key == "D")
- return KeyBord.D;
- if (key == "E")
- return KeyBord.E;
- if (key == "F")
- return KeyBord.F;
- if (key == "G")
- return KeyBord.G;
- if (key == "H")
- return KeyBord.H;
- if (key == "I")
- return KeyBord.I;
- if (key == "J")
- return KeyBord.J;
- if (key == "K")
- return KeyBord.K;
- if (key == "L")
- return KeyBord.L;
- if (key == "M")
- return KeyBord.M;
- if (key == "N")
- return KeyBord.N;
- if (key == "O")
- return KeyBord.O;
- if (key == "P")
- return KeyBord.P;
- if (key == "Q")
- return KeyBord.Q;
- if (key == "R")
- return KeyBord.R;
- if (key == "S")
- return KeyBord.S;
- if (key == "T")
- return KeyBord.T;
- if (key == "U")
- return KeyBord.U;
- if (key == "V")
- return KeyBord.V;
- if (key == "W")
- return KeyBord.W;
- if (key == "X")
- return KeyBord.X;
- if (key == "Y")
- return KeyBord.Y;
- if (key == "Z")
- return KeyBord.Z;//A-Z
- if (key == "F1")
- return KeyBord.F1;
- if (key == "F2")
- return KeyBord.F2;
- if (key == "F3")
- return KeyBord.F3;
- if (key == "F4")
- return KeyBord.F4;
- if (key == "F5")
- return KeyBord.F5;
- if (key == "F6")
- return KeyBord.F6;
- if (key == "F7")
- return KeyBord.F7;
- if (key == "F8")
- return KeyBord.F8;
- if (key == "F9")
- return KeyBord.F9;
- if (key == "F10")
- return KeyBord.F10;
- if (key == "F11")
- return KeyBord.F11;
- if (key == "F12")
- return KeyBord.F12;//F1-F12
- if (key == "Esc")
- return KeyBord.Escape;
- if (key == "0")
- return KeyBord.D0;
- if (key == "1")
- return KeyBord.D1;
- if (key == "2")
- return KeyBord.D2;
- if (key == "3")
- return KeyBord.D3;
- if (key == "4")
- return KeyBord.D4;
- if (key == "5")
- return KeyBord.D5;
- if (key == "6")
- return KeyBord.D6;
- if (key == "7")
- return KeyBord.D7;
- if (key == "8")
- return KeyBord.D8;
- if (key == "9")
- return KeyBord.D9;//0-9
- if (key == "-")
- return KeyBord.OemMinus;
- if (key == "=")
- return KeyBord.Oemplus;
- if (key == @"\")
- return KeyBord.OemBackslash;
- if (key == "BackSpace")
- return KeyBord.Backspace;
- if (key == "Tab")
- return KeyBord.Tab;
- if (key == "CapsLock")
- return KeyBord.CapsLock;
- if (key == "Windows")
- return KeyBord.LWin;
- if (key == "Alt")
- return KeyBord.Alt;
- if (key == "Shift")
- return KeyBord.ShiftKey;
- if (key == "Control")
- return KeyBord.ControlKey;
- if (key == "[")
- return KeyBord.OemOpenBrackets;
- if (key == "]")
- return KeyBord.Oem6;
- if (key == ";")
- return KeyBord.OemSemicolon;
- if (key == "'")
- return KeyBord.OemQuotes;
- if (key == ",")
- return KeyBord.Oemcomma;
- if (key == ".")
- return KeyBord.OemPeriod;
- if (key == "?")
- return KeyBord.OemQuestion;
- if (key == "Space")
- return KeyBord.Space;
- if (key == "<")
- return KeyBord.Oemcomma;
- if (key == ">")
- return KeyBord.OemPeriod;
- if (key == "/")
- return KeyBord.OemQuestion;
- if (key == "~")
- return KeyBord.Oem3;
- if (key == "Inst")/控制键盘
- return KeyBord.Insert;
- if (key == "Home")
- return KeyBord.Home;
- if (key == "End")
- return KeyBord.End;
- if (key == "Enter")
- return KeyBord.Enter;
- if (key == "PageDw")
- return KeyBord.PageDown;
- if (key == "PageUp")
- return KeyBord.PageUp;
- if (key == "Left")
- return KeyBord.Left;
- if (key == "Right")
- return KeyBord.Right;
- if (key == "Up")
- return KeyBord.Up;
- if (key == "Down")
- return KeyBord.Down;
- if (key == "PrintScreen")
- return KeyBord.PrintScreen;
- if (key == "Scroll")
- return KeyBord.Scroll;
- if (key == "Num0")//数字键盘
- return KeyBord.NumPad0;
- if (key == "Num1")
- return KeyBord.NumPad1;
- if (key == "Num2")
- return KeyBord.NumPad2;
- if (key == "Num3")
- return KeyBord.NumPad3;
- if (key == "Num4")
- return KeyBord.NumPad4;
- if (key == "Num5")
- return KeyBord.NumPad5;
- if (key == "Num6")
- return KeyBord.NumPad6;
- if (key == "Num7")
- return KeyBord.NumPad7;
- if (key == "Num8")
- return KeyBord.NumPad8;
- if (key == "Num9")
- return KeyBord.NumPad9;
- if (key == "NumAdd")
- return KeyBord.Add;
- if (key == "Num/")
- return KeyBord.Divide;
- if (key == "Num*")
- return KeyBord.Multiply;
- if (key == "Num-")
- return KeyBord.Subtract;
- if (key == "NumEnter")
- return KeyBord.Enter;
- if (key == "Num.")
- return KeyBord.OemPeriod;
- if (key == "NumLock")
- return KeyBord.NumLock;
-
-
- return KeyBord.T;
- }
-
- }

Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。