SendKeys.send发送多个字符

时间:2018-03-21 07:26:01

标签: c# sendkeys

抱歉我的英语不好。

我正在为触摸屏编写键盘应用程序。但是,

例如,当我按下A键时,有时会写入5次A键。我基本上使用按钮点击事件。

private void button42_Click(object sender, EventArgs e)
    {
        SendKeys.Send("A");
        Thread.Sleep(100);
    }

mouse_click事件没有问题。只需触摸

我该怎么做?

1 个答案:

答案 0 :(得分:-2)

1.尝试在 mouse_up或touch_up 事件中处理它,而不是在此处使用延迟。 实际实施和事件将取决于您的框架。

mouse_up / touch_up将确保您甚至只在触摸释放时触发。

要在触摸和保持时添加重复,您可能需要添加其他逻辑。

  1. 尝试声明一个字段以切换事件触发的值。

    private bool handling=false;
    private void button42_Click(object sender, EventArgs e)
    {
        if(!handling)
        {
            handling=true;
            SendKeys.Send("A");
            Task.Delay(100);
            handling=false;
       }
    }