keybd_event发出的消息只能当前活动的窗口收到。我想让一个不是当前活动的窗口收到按方向键的消息可以吗?SendMessage可以做吗?怎样做呢?清大侠指点。

解决方案 »

  1.   

    SendMessage(hwnd_of_the_window_send_to,WM_KEYDOWN,KEY,0);
      

  2.   


    按下 SendMessage(hwnd,WM_KEYDOWN,KeyCode,0);
    松开 SendMessage(hwnd,WM_KEYUP,KeyCode,0);一组DOWN UP,构成一个Press
      

  3.   

    SendMessage(接受消息的窗口句柄,WM_KEYDOWN,KEY,0);.或者在当前窗口获得消息,然后去获得那个窗口的指针,然后做操作!
      

  4.   

    SendMessage(接受消息的窗口句柄,WM_KEYDOWN,KEY,0);
    或者你在当前窗口处理该消息,然后你去获得那个窗口的指针进行操作!@
      

  5.   

    我这样写,名为abc的ie窗口中没有执行“上键”的命令。
    CWnd *p = CWnd::FindWindow(0,"abc");
    //p->SetWindowText("abcdef");//用这个测试了一下窗口指针,窗口标题确实改变。
    p->SendMessage(WM_KEYDOWN,VK_UP,0);
    p->SendMessage(WM_KEYUP,VK_UP,0);正常情况下按上键,网页应该向上滚动。可是SendMessage没有起作用。
      

  6.   

    网页没有向上滚动的原因是
    p->SendMessage(WM_KEYDOWN,VK_UP,0);
    p->SendMessage(WM_KEYUP,VK_UP,0);
    这两句接连发生的,太快了,所以几乎就没动阿,只要
    两句中间Sleep()一下就可以拉。