C# 類比鍵盤操作--SendKey(),SendKeys()

來源:互聯網
上載者:User

標籤:

類比鍵盤輸入就是使用以下2個文法實現的.
SendKeys.Send(string keys);  //類比漢字(文本)輸入
SendKeys.SendWait(string keys); //類比按鍵輸入

先瞭解一下2個文法的用法吧! 稍後貼出代碼看看大家能不能看懂哦/...

(1)每個按鍵由一個或多個字元表示。為了指定單一鍵盤字元,必須按字元本身的鍵。例如,為了表示字母 A,可以用 "A" 作為 string。為了表示多個字元,就必須在字元後面直接加上另一個字元。例如,要表示 A、B 及 C,可用 "ABC" 作為 string。
 

(2)對 SendKeys 來說,加號 (+)、插入符 (^)、百分比符號 (%)、上劃線 (~) 及圓括弧 ( ) 都具有特殊意義。為了指定上述任何一個字元,要將它放在大括弧 ({}) 當中。例如,要指定正號,可用 {+} 表示。方括弧 ([ ]) 對 SendKeys 來說並不具有特殊意義,但必須將它們放在大括弧中。在其它應用程式中,方括弧有特殊意義,在出現動態資料交換 (DDE) 的時候,它可能具有重要意義。為了指定大括弧字元,請使用 {}。
 

(3)為了在按下按鍵時指定那些不顯示的字元,例如 ENTER 或 TAB 以及那些表示動作而非字元的按鍵,請使用下列代碼:

按鍵 代碼
BACKSPACE {BACKSPACE}, {BS}, 或 {BKSP}
BREAK {BREAK}
CAPS LOCK {CAPSLOCK}
DEL or DELETE {DELETE} 或 {DEL}
DOWN ARROW {DOWN}
END {END}
ENTER {ENTER}或 ~
ESC {ESC}
HELP {HELP}
HOME {HOME}
INS or INSERT {INSERT} 或 {INS}
LEFT ARROW {LEFT}
NUM LOCK {NUMLOCK}
PAGE DOWN {PGDN}
PAGE UP {PGUP}
PRINT SCREEN {PRTSC}
RIGHT ARROW {RIGHT}
SCROLL LOCK {SCROLLLOCK}
TAB {TAB}
UP ARROW {UP}
F1 {F1}
F2 {F2}
F3 {F3}
F4 {F4}
F5 {F5}
F6 {F6}
F7 {F7}
F8 {F8}
F9 {F9}
F10 {F10}
F11 {F1}
F12 {F12}
F13 {F13}
F14 {F14}
F15 {F15}
F16 {F16}

 

(4)SHIFT、CTRL 及 ALT 等按鍵結合的按鍵組合,可在這些按鍵碼的前面放置一個或多個代碼,這些代碼列舉如下:

按鍵 代碼
Shift +
Ctrl ^
Alt %

 

(5)輸入漢字用SendKeys.Send("漢字");

/*----------------以下是案例代碼-----------------*/

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace ApplicationForm{
public partial class Form1 : Form {
public Form1() {
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
//游標移至richTextBox1
richTextBox1.Focus();
//類比按下"ABCDEFG"
SendKeys.SendWait("(ABCDEFG)");
SendKeys.SendWait("{left 5}");
SendKeys.SendWait("{h 10}");
/*
更多舉例:
SendKeys.SendWait("^C");
//Ctrl+C 按鍵組合
SendKeys.SendWait("+C");
//Shift+C 按鍵組合
SendKeys.SendWait("%C");
//Alt+C 按鍵組合
SendKeys.SendWait("+(AX)");
//Shift+A+X 按鍵組合
SendKeys.SendWait("+AX");
//Shift+A 按鍵組合,之後按X鍵
SendKeys.SendWait("{left 5}");
//按←鍵 5次
SendKeys.SendWait("{h 10}");
//按h鍵 10次
SendKeys.Send("漢字");
//類比輸入"漢字"2個字
*/
}
}
}

C# 類比鍵盤操作--SendKey(),SendKeys()

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.