SendKeys.Send()输入中文

SendKeys有两个方法,分别为Send()和SendWait(),作用是模拟键盘输入。因为是模拟键盘输入,所以输入的字符只能是键盘上的按键,结果就是不能输入中文。

    这样一来,是不是就不能输入中文了呢?让我们换一个思路:不让直接输入,复制、粘贴总可以吧。

    来看看复制、粘贴的过程:先把内容复制到(系统的)剪贴板,再从剪贴板复制出来。

    根据这一原理,编码的思路就清晰了:

  1. 对剪贴板进行操作,把字符串复制到剪贴板(比发送“CTRL+C”方便)
  2. 焦点定位到输入框
  3. 发送“CTRL+V”

    上面3部涉及到的具体代码都可以在网上找到,所以这个思路是可行的。

    下面贴一段C#的代码作为例子

            #region ^c+^v实现中文的输入         

            string s=”hello, 我是中文字符串”;

            Clipboard.SetText(s);    // 将字符串复制到剪贴板,相当于^c

            textBox1.Focus();    // 定位焦点
            SendKeys.SendWait("^v");   // CTRL+V,粘贴

            #end region

    怎么样,很简单吧

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值