怎么样查找子窗口,一般的FindWindowEx为什么不行?
程序是用FoxPro编的, 主窗口有菜单, 选择一个选项后出现子窗口.
我想找到子窗口的句柄, 现在我用FindWindow找到了主窗口的句柄.
不知道怎么找子窗口,望各位高手指导!

解决方案 »

  1.   

    BOOL EnumChildWindows(
      HWND hWndParent,         // handle to parent window
      WNDENUMPROC lpEnumFunc,  // callback function
      LPARAM lParam            // application-defined value
    );
      

  2.   

    hwnd = GetWindow(hwnd/*主窗口*/,GW_CHILD);
    //之后你要是还想找下一个子窗口可
    hwnd = GetWindow(hwnd/*主窗口*/,GW_HWNDNEXT);
    //如果返回NULL表示找不到了
      

  3.   

    我试了, 
    hWnd=GetWindow(hParent,GW_CHILD);
    CWnd* pWnd=FromHandle(hWnd);
    pWnd->CloseWindow();
    时除了标题和菜单,其他就不再刷新了, 不管我再打开子窗口,
    char mes[21];
    pWnd->GetWindowText(mes,20);
    时也不显示子窗口标题, 而显示空白.
      

  4.   

    EnumChildWindows(HWND hWndParent, WNDENUMPROC lpEnumFunc, LPARAMlParam );BOOL CALLBACK EnumFunc(  HWND hwnd,   LPARAM lParam  )//参数hwnd就是枚举进来的子窗口句柄
    {
    char str[100];
             GetWindowText(hwnd, str, 100);
    AfxMessageBox(str);
    return TRUE;
    }