Vb.net 在Winform中按一个按钮,然后在任何其他程序中键入一个字符
我想创建一个Winform来帮助我输入旧的英语字符。其中一些我可以使用美国国际键盘访问,但也有一些我不能也没有在Windows上使用的Alt代码,比如带有宏字符(āīōū)、带有宏字符的ash(ǣ)和上面带有点的字符(ċ和ġ)。(如果您知道一种更简单的非编程方式,请告诉我。) 所以我想创建一个可以打开然后运行的程序,它允许我做两件事:Vb.net 在Winform中按一个按钮,然后在任何其他程序中键入一个字符,vb.net,winforms,button,visual-studio-2015,Vb.net,Winforms,Button,Visual Studio 2015,我想创建一个Winform来帮助我输入旧的英语字符。其中一些我可以使用美国国际键盘访问,但也有一些我不能也没有在Windows上使用的Alt代码,比如带有宏字符(āīōū)、带有宏字符的ash(ǣ)和上面带有点的字符(ċ和ġ)。(如果您知道一种更简单的非编程方式,请告诉我。) 所以我想创建一个可以打开然后运行的程序,它允许我做两件事: 当我在任何程序(Chrome、Word、记事本等)中选择一个文本框时,我可以在不失去焦点的情况下按下程序上的按钮,并在相关程序中生成与该按钮相关联的字符。(基本上
我正在使用VB.NET和Windows Visual Studio 2015。要使表单不可聚焦,可以覆盖
CreateParams
。可以很容易地转换成VB.NET使用在线转换器。至于打印字符,使用。最后,。好吧,我的SendKeys有问题。我环顾了好几个答案,但都没有找到我想要的答案。我所能找到的就是,它允许我在记事本窗口中设置文本,但我想在任何应用程序中附加(而不是重置)文本。SendKeys
将按键发送到当前聚焦的窗口。如果您跟随我的第一条评论,使您的表单无法接收焦点,从而导致以前的应用程序保留其焦点,那么发送键
应该可以正常工作。您只需使用一行:发送键。发送(“此处的文本或字符”)
-无需处理获取正确窗口的问题,如果您的表单仍然无法接收焦点。要使表单不可聚焦,您可以覆盖CreateParams
。可以很容易地转换成VB.NET使用在线转换器。至于打印字符,使用。最后,。好吧,我的SendKeys有问题。我环顾了好几个答案,但都没有找到我想要的答案。我所能找到的就是,它允许我在记事本窗口中设置文本,但我想在任何应用程序中附加(而不是重置)文本。SendKeys
将按键发送到当前聚焦的窗口。如果您跟随我的第一条评论,使您的表单无法接收焦点,从而导致以前的应用程序保留其焦点,那么发送键
应该可以正常工作。您只需使用一行:发送键。发送(“此处的文本或字符”)
-无需处理获取正确窗口的问题,如果你的眼睛不能集中注意力。