SendKeys Ctrl-A无法正常工作

ALI*_*ALI 17 c# sendkeys

我正在尝试发送CTRL A (在这个案例中选择所有应用程序,但尝试我可能它不起作用)我尝试了很多组合,但都无济于事,任何想法?

        IntPtr appHandle = FindWindow(null, "Document1 - Microsoft Word");
        if (appHandle == IntPtr.Zero)
        {
            MessageBox.Show("Specified app is not running.");
            return;
        }

        SetForegroundWindow(appHandle);
        System.Threading.Thread.Sleep(500);

        //SendKeys.SendWait("111");
        SendKeys.SendWait("^A");
        //SendKeys.SendWait("^(A)"); //ctrl a
        //SendKeys.SendWait("(^A)");
Run Code Online (Sandbox Code Playgroud)

小智 38

要指定的任意组合SHIFT,CTRL以及ALT应承担下来,同时按下其他几个键,封闭代码括号这些键.例如,指定按住SHIFT,同时EC压制,使用+(EC).要指定按住SHIFT的同时E按下,其次是C没有SHIFT,使用+EC.

答案是:

SendKeys.Send("^(a)");
Run Code Online (Sandbox Code Playgroud)


小智 13

我有同样的问题我想选择文本输入文本控件

SendKeys.SendWait("^ A")不起作用,Sendkeys.SendWait"^ A"也不起作用

Sendkeys.SendWait("^ a")工作正常

欲了解更多信息:http: //www.autoitscript.com/autoit3/docs/functions/Send.htm

心连心


小智 5

SendKeys 区分大小写。尝试这个:

SendKeys.Send("^a"); 
Run Code Online (Sandbox Code Playgroud)

我不确定,但似乎

SendKeys.Send("^A"); 
Run Code Online (Sandbox Code Playgroud)

表示Ctrl+ Shift+ A。至少在某些应用程序中它确实以这种方式工作。


小智 4

你试过了吗

SendKeys.SendWait("^{A}"); 
Run Code Online (Sandbox Code Playgroud)