桌面上有一个java-swing包做的应用程序,其中有一个按纽。现在,我想用VC++做一个程序,用来模拟按纽被按下的事件。就是说,我不用直接按那个按纽,而使它触发。我是想用SendMessage()来实现的。我已经获得了java应用程序的窗口句柄(CWnd),但是消息发过去却不行。看看谁能够实现,最好有原代码。重分送出!!

解决方案 »

  1.   

    代码:
    CWnd* pMainWnd = FindWindow(NULL,"7dlg");//目标对话框为"7dlg"
    HWND FirstBtn = FindWindowEx(pMainWnd->m_hWnd,NULL,"BUTTON",NULL);
    ::SendMessage(FirstBtn,WM_LBUTTONDOWN,MK_LBUTTON,0);//send down message
    Sleep(100);
    ::SendMessage(FirstBtn,WM_LBUTTONUP,MK_LBUTTON,0);//send up message!!!
      

  2.   

    楼上的朋友,你那是针对Windows应用程序的代码。对于java来说不行,而且,如果java上有多个Button时怎么办呢?
      

  3.   

    FindWindow、FindWindowEx、SendMessage都是win32api,java即使不能直接调用,也一定有提供,我想
    看FindWindowEx的第二函数,有说明