先关联BUTTON的BTN_CLICKED事件(用做接收消息)。然后使用SendMessage(WM_COMMAND, NULL, NULL)(用做发送消息).这样就可以你的要求。

解决方案 »

  1.   

    SendMessage(hWnd, WM_LBUTTONDOWN , NULL, NULL)
      

  2.   

    定义一个消息处理函数,专门处理你那个消息,然后在这个消息处理函数中调用Button的点击事件处理函数。你试一试,我从来没有这样做过。
      

  3.   

    ...
    pThis->m_hTipWnd = NULL;
    EnumThreadWindows( 
    dwThreadId,
    EnumDialogProc,
    reinterpret_cast<LPARAM>(pThis) );
    if (pThis->m_hTipWnd != NULL)
    {
    BOOL bSend1 = PostMessage(pThis->m_hTipWnd, WM_LBUTTONDOWN, 0, 0x0007002f);
    BOOL bSend2 = PostMessage(pThis->m_hTipWnd, WM_LBUTTONUP, 0, 0x0007002f);
    ASSERT(bSend1 && bSend2);
    pThis->m_bCount = FALSE;
    pThis->m_bGoto  = TRUE;
    }
    ...
      

  4.   

    更正:BN_CLICKED
    SendMessage(WM_COMMAND, idButton /*identifier of button*/, hwndButton /* handle to button*/) 
      

  5.   

    bskay(bskay):先Thx了!!不过有些疑问:我只能知道Button的句柄(因为该窗口是其他应用程序的),不知道她的指针, 能不能加上注释呀
      

  6.   

    声明:Button 是另一个应用程序的,我只能得到她的当前的句柄!
      

  7.   

    用BM_CLICK,不要用BN_CLICKED 
    SendMessage(hButton, BM_CLICKED, 0, 0)
    hButton就是Button的句柄