2008-12-04 156 views
9

如何将键盘输入消息发送到当前选择的窗口或先前选择的窗口?C#发送键盘输入

我有一个程序,我用它来键入一些字符,这些字符在我的键盘上不存在,我希望它能直接发送输入,而不是我必须一直复制和粘贴。

编辑:

这个的应用是打字德国变音。我是美国人,在德国工作。我正在使用美式键盘,并不时输入变音符号/欧元符号/尖锐的S.目前我有一个简单的WinForms应用程序,带有一个文本框和一些带有额外字符的按钮。我在文本框中输入内容,然后按按钮将文本添加到文本框中。然后我复制文本并粘贴到任何地方。如果我只需点击其中一个按钮,它就会发送文本输入到我正在输入/正在输入的地方,这将会很棒。目前的方案运作良好,但我可以做得更好。

回答

10

SendKeys.Send将帮助你。

+0

我实际上设法今天这个来实现。花了我很长时间。 – smack0007 2011-06-08 17:51:57

3

看看System.Windows.Forms.SendKeys.Send(string)。这允许按键被发送到当前活动的应用程序。

更新:刚刚发现这个MSDN上的论坛:MSDN Forum

1

如果它不存在,你的键盘上,你可能只需添加一个按钮,发送该字符的代码键的参照对象要追加这个人物。给我们一个你想要的例子,我们可能会向你展示一些代码。代码

短的例子:

myField.Text += "®"; //This is a char that I do not have on my keyboard