MFC-GetWindow获取与指定窗口有特定关系的窗口句柄

 

复制代码
    HWND hWnd2 = GetSafeHwnd();
    ::SetWindowText(hWnd2, _T("窗口句柄练习"));
    CString str;

    TCHAR ch[MAX_PATH] = { 0 };
    HWND hWnd = ::GetDesktopWindow();//获取桌面窗口的句柄
    HWND hWnd1 = ::GetWindow(hWnd, GW_CHILD); //获取与指定窗口有特定关系的窗口句柄
    //参数1:窗口句柄
    //参数2:与参数1的关系
    //       GW_CHILD(&H5):如果指定窗口是父窗口,则获得的是在Z序顶端的子窗口的句柄,否则为NULL。函数仅检查指定父窗口的子窗口,不检查继承窗口
    //       GW_HWNDNEXT(&H2):获取与hWnd同级别,Z序在hWnd的下一个窗口句柄
    //       GW_HWNDFIRST = 0;    同级别第一个
    //       GW_HWNDLAST  = 1;    同级别最后一个
    //       GW_HWNDPREV  = 3;    同级别上一个
    //       GW_OWNER     = 4;    属主窗口(如果存在)  
    //         
    //



    while (hWnd1 != NULL)
    {
        ::GetWindowText(hWnd1, ch, MAX_PATH);//获取指定窗口或控件的文本
    //参数1:带文本的窗口或控件的句柄
    //参数2:指向接收文本的缓冲区的指针
    //参数3:指定要保存在缓冲区内的字符的最大个数,其中包含NULL字符。如果文本超过界限,它就被截断


        str = ch;

        if (str == _T("窗口句柄练习"))   //寻找指定窗口
        {
            ::OutputDebugString(_T("指定窗口找到了"));
            return;

        }
        hWnd1 = ::GetWindow(hWnd1, GW_HWNDNEXT);
    }
复制代码

 

 

 

 

posted @   天子骄龙  阅读(254)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
历史上的今天:
2022-03-07 halcon-膨胀腐蚀实例(边缘)
2022-03-07 halcon-gray_dilation_shape图像膨胀
2022-03-07 halcon-gray_dilation_rect图像膨胀
2022-03-07 halcon-gray_erosion_shape图像腐蚀
2022-03-07 halcon-gray_erosion_rect图像腐蚀
2022-03-07 halcon-erosion_rectangle1矩形区域腐蚀
2022-03-07 halcon-erosion_circle圆形区域腐蚀
点击右上角即可分享
微信分享提示