假设已知某按钮的句柄为10000如果不考虑模拟鼠标和键盘动作的话,如何才能点击按钮?

解决方案 »

  1.   

    发消息.
    CWnd *pChild=pWnd->GetDlgItem(IDOK);//获得按钮指针
    pWnd->PostMessage(WM_COMMAND,MAKELONG(IDOK, BN_CLICKED),(LPARAM)pChild->GetSafeHwnd());//发送BN_CLICKED消息
      

  2.   

    问题在这里
    MAKELONG(IDOK, BN_CLICKED),
    如果不是自己的窗口,我怎么知道他的ID
      

  3.   

    后来试了一下 直接发WMXX就可以了 感谢两位的回答
      

  4.   

    HWND hButton = (HWND)0x00161004;int ID = ::GetDlgCtrlID(hButton);
    ::PostMessage(::GetParent(hButton), WM_COMMAND, MAKEWPARAM(ID, BN_CLICKED), (LPARAM)hWnd);