S D K 学 习 笔 记2 统计顶层窗口

类别:编程语言 点击:0 评论:0 推荐:

统计顶层窗口

这里主要用到EnumWindows函数来遍历所有顶层窗口。

   原音重现:

BOOL EnumWindows( WNDENUMPROC lpEnumFunc, // callback function LPARAM lParam // application-defined value );

 这个函数需要一个自定义的回调函数EnumWindowsProc,

原音重现:

BOOL CALLBACK EnumWindowsProc( HWND hwnd, // handle to parent window LPARAM lParam // application-defined value );

好了,现在我们开始统计吧:

int iWndNums; //窗口的数量

BOOL CALLBACK EnumWindowsProc(
     HWND hwnd, // handle to parent window
     LPARAM lParam // application-defined value
)
{

  if(hwnd==NULL)
  { 
    return false; //结束枚举
  }


  //这个hwnd就是枚举到的当前窗体的句柄
  
  //统计窗口的数量
  iWndNums++;


  //继续枚举
  return true;


}
//---------------------------------------------------------------------------
//测试
void __fastcall TForm1::TestBitBtnClick(TObject *Sender)
{
  LPARAM lmyParam;
  bool bRet;

  iWndNums=0;

  //枚举顶层窗口
  bRet=EnumWindows((WNDENUMPROC)EnumWindowsProc,lmyParam);

   //iWndNums的值就是统计的顶层窗口的数量
}

以上CB5编译通过。

本文地址:http://com.8s8s.com/it/it29504.htm