delphi模拟按键 
       keybd_event(42,mapvirtualkey(42,0),0,0);
        keybd_event(39,mapvirtualkey(39,0),0,0);
        keybd_event(39,mapvirtualkey(39,0),keyeventf_keyup,0);
        keybd_event(39,mapvirtualkey(39,0),0,0);
        keybd_event(39,mapvirtualkey(39,0),keyeventf_keyup,0);
        keybd_event(39,mapvirtualkey(39,0),0,0);
        keybd_event(39,mapvirtualkey(39,0),keyeventf_keyup,0);
        keybd_event(42,mapvirtualkey(42,0),keyeventf_keyup,0);
用段程序模拟光标先放在文本中的任意一处,按住SHIFT再按右右右选中文本中的三个字符,但这段程序无法实现,有知道为什么的吗?

解决方案 »

  1.   

    未设置焦点
    前面加 edit1.setfocuse  
      

  2.   

    我种开贴了http://topic.csdn.net/u/20080824/19/63eb2254-c0cb-4393-b55f-833e5c3dcd65.html
      

  3.   

    procedure TForm1.Button1Click(Sender: TObject);
    var
     i:byte;
    begin
      sleeP(2000);
      for i:=1 to 3 do
      begin
        keybd_event(VK_SHIFT,0,KEYEVENTF_EXTENDEDKEY or 0,0);
        keybd_event(VK_RIGHT,0,KEYEVENTF_EXTENDEDKEY or 0,0);
        keybd_event(VK_RIGHT,0,KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP,0);
        keybd_event(VK_SHIFT,0,KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP,0);
      end;
    end;