程序是这样的:
我的程序是活动窗口。 hWnd=::GetActiveWindow();
::GetWindowText(hWnd, a, 100);
AfxMessageBox(a); ::SetWindowText(hWnd, "sdf");
hWnd=::GetNextWindow(hWnd, GW_HWNDPREV); ::GetWindowText(hWnd, a, 100);
AfxMessageBox(a);
::SetWindowText(hWnd, "sdf");但取到的不是我窗口下面的窗口,而是IME窗窗,或是别的,如何才能取到我程序下面的窗口,如果后面的窗口是最大化的还好,但有时不是。

解决方案 »

  1.   

     hWnd=::GetNextWindow(hWnd, GW_HWNDPREV);GW_HWNDPREV这个标识是前一个窗口吧,后一个窗口是GW_HWNDNEXT
      

  2.   

    直接用CWnd类里面的不就行了,没必要去用平台SDK的函数吧,CWnd里面已经封装的很好了
      

  3.   

    是的前一个窗口,我用GW_HWNDNEXT没效果才换的这个。
      

  4.   

    刚试了一下CWnd类里面的也不行。