开发者

SendKeys Ctrl-A not working

开发者 https://www.devze.com 2023-01-10 19:42 出处:网络
I\'m trying to send CTRL A(select all to开发者_运维知识库 an app in this case word but try as I might it doesn\'t work) I\'ve tried quite a few combinations but all to no avail, any ideas?

I'm trying to send CTRL A (select all to开发者_运维知识库 an app in this case word but try as I might it doesn't work) I've tried quite a few combinations but all to no avail, any ideas?

        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)");


To specify that any combination of SHIFT, CTRL, and ALT should be held down while several other keys are pressed, enclose the code for those keys in parentheses. For example, to specify to hold down SHIFT while E and C are pressed, use +(EC). To specify to hold down SHIFT while E is pressed, followed by C without SHIFT, use +EC.

Answer is:

SendKeys.Send("^(a)");


I got same problem I want select text an input text control

SendKeys.SendWait("^A") doesn't works nor Sendkeys.SendWait "^A" doessn't works

Sendkeys.SendWait("^a") works ok

for more info: http://www.autoitscript.com/autoit3/docs/functions/Send.htm

hth


SendKeys is case-sensitive. Try this:

SendKeys.Send("^a"); 

I'm not sure, but it seems like

SendKeys.Send("^A"); 

means Ctrl+Shift+A. At least it does work this way in some applications.


Did you try

SendKeys.SendWait("^{A}"); 


been through this.

The only working solution:

Find your element where you want to enter text

     element.SetFocus();

     Thread.Sleep(2000);

     SendKeys.SendWait("^{HOME}");  // Move to start of control

     SendKeys.SendWait("^+{END}"); // Select everything

     SendKeys.SendWait("{DEL}"); 

     SendKeys.SendWait("Value"); 
0

精彩评论

暂无评论...
验证码 换一张
取 消