自己是做java的,但是最近这几天工作中需要学习c#模拟键盘鼠标,但是每次输入单个键盘很好办,但是怎么将传进来的值,模拟键盘打印出来呢,参考了一些资料,学习了一下,发现其实很简单
String nn = textBox1.Text;
char[] str = nn.ToCharArray();
for (var i = 0; i < str.Length; i++) {
String st = str[i].ToString();
int A = getnumber(st);
keybd_event((Byte)A, 0, KEYEVENTF_KEYUP, 0);
}
public int getnumber(String str)
{
Dictionary<String, int> keycode = new Dictionary<String, int>();
// ASCIIEncoding.
keycode.Add("A", 65);
keycode.Add("B", 66);
keycode.Add("C", 67);
keycode.Add("D", 68);
keycode.Add("E", 69);
keycode.Add("F", 70);
keycode.Add("G", 71);
keycode.Add("H", 72);
keycode.Add("I", 73);
keycode.Add("J", 74);
keycode.Add("K", 75);
keycode.Add("L", 76);
keycode.Add("M", 77);
keycode.Add("N", 78);
keycode.Add("O", 79);
keycode.Add("P", 80);
keycode.Add("Q", 81);
keycode.Add("R", 82);
keycode.Add("S", 83);
keycode.Add("T", 84);
keycode.Add("U", 85);
keycode.Add("V", 86);
keycode.Add("W", 87);
keycode.Add("X", 88);
keycode.Add("Y", 89);
keycode.Add("Z", 90);
keycode.Add("0", 48);
keycode.Add("1", 49);
keycode.Add("2", 50);
keycode.Add("3", 51);
keycode.Add("4", 52);
keycode.Add("5", 53);
keycode.Add("6", 54);
keycode.Add("7", 55);
keycode.Add("8", 56);
keycode.Add("9", 57);
keycode.Add(".", 110);
foreach (KeyValuePair<string, int> kvp in keycode)
{
if (kvp.Key.Equals(str))
{
return kvp.Value;
}
}
return 0;
}
我的办法算是笨的,但是我觉得这样比较容易明白 转载请注明