首页 > 系统相关 >MFC-EnumWindows枚举顶层窗口

MFC-EnumWindows枚举顶层窗口

时间:2023-03-08 15:57:36浏览次数:35  
标签:顶层 MFC 窗口 函数 句柄 EnumWindows 枚举

 

BOOL CALLBACK EnumWindowsProc(HWND hwnd, LPARAM lParam)  //回调函数
//参数1:EnumWindows函数自动传过来的句柄
//参数2:就是EnumWindows函数参数2的值
{
    
    TCHAR ch[MAX_PATH] = { 0 };
    CString str;
        
        ::GetWindowText(hwnd, ch, MAX_PATH);
        
        str = ch;
                
        if (str == _T("窗口句柄练习"))   //寻找指定窗口
        {
            AfxMessageBox(_T("窗口句柄练习--找到了"));
            return 0;
        }
        
    return 1;
}



void CcuankoumeijuDlg::OnBnClickedButton3()
{
    
    HWND hWnd2 = GetSafeHwnd();
    ::SetWindowText(hWnd2, _T("窗口句柄练习"));

    BOOL b = EnumWindows(EnumWindowsProc,NULL);//枚举顶层窗口
    //该函数枚举所有屏幕上的顶层窗口,并将窗口句柄传送给应用程序定义的回调函数。
    // 回调函数返回FALSE将停止枚举,否则EnumWindows函数继续到所有顶层窗口枚举完为止
    //参数1:回调函数指针
    //参数2:lPararm:指定一个传递给回调函数的值
    //返回值:如果函数成功,返回值为非零;如果函数失败,返回值为零
    //说明:EnumWindows函数不列举子窗口;
    //      调用这个函数比调用GetWindow函数更可靠。调用GetWindow函数中执行这个任务的应用程序可能会陷入死循环或指向一个已被销毁的窗口的句柄





}

 

 

 

 

 

 

标签:顶层,MFC,窗口,函数,句柄,EnumWindows,枚举
From: https://www.cnblogs.com/liming19680104/p/17192254.html

相关文章

  • Windows 11提示“无法枚举容器中的对象。”
    *为什么会出现这一错误提示?*在Windows系统当中,对文件或文件夹的权限进行设置可以有效地保护隐私内容。登录管理员账户可以对权限进行更改,并且有权决定是否将内容共享给......
  • MFC-FindWindow获取与指定窗口类名和窗口名相匹配的最顶层窗口的窗口句柄
     HWNDhWnd2=GetSafeHwnd();::SetWindowText(hWnd2,_T("窗口句柄练习"));TCHARch[MAX_PATH]={0};CStringstr;HWNDhWnd=::F......
  • C语言-结构、联合、枚举
    结构使用struct关键词,可以创造新的类型。关键词struct取自structure,中文翻译为结构。这种由多个不同的数据类型组成的类型,被称为结构。struct{ charname[20]; intg......
  • 【转载】将C#里的枚举Enum转换为int
    版权声明:本文为博主原创文章,遵循CC4.0by-sa版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/lzdidiv/article/details/71170528将枚举类型转......
  • MFC常用宏
    MAX_PATH  是C语言运行时库中通过#define指令定义的一个宏常量,它定义了编译器所支持的最长全路径名的长度TCHARch[MAX_PATH]={0};      ......
  • Java之枚举类
    Java之枚举枚举类的格式:pbulicenum枚举类类名{枚举对象1(实参),枚举对象1(实参)...;属性名;(无参/有参)构造器;get方法;}枚举类中不建议使用set方法,因......
  • C++枚举型变量用法
    #include<iostream>#include<string>usingnamespacestd;intmain(){enumname{one,two=23,three};//强制类型转换inta=one;cout<<a<<endl;//不能这样直接赋值//one......
  • 11. 枚举
    一、什么是枚举变量  枚举时C语言中的一种构造数据类型,它可以让数据更简洁,更易读,对于只有几个有限的特定类型,可以使用枚举。枚举是一组常量的集合,包含一组有限的特定......
  • 08:swift-枚举
      正文/*1:**Swift中的枚举则更加灵活,每一个枚举成员可以是字符串、字符、任意的整数值,或者是浮点类型。2:*一旦变量声明成枚举类型,你就可以用一个点语法......
  • 【算法设计-枚举、分治】素数、约数、质因数分解
    目录1.素数判定2.素数筛选法3.质因数分解4.求一个数的约数5.求两个数的最大公约数(GCD)6.求两个数的最小公倍数(LCM)1.素数判定判定从2到sqrt(n)依次能否把n整除,......