其他语言

本类阅读TOP10

·基于Solaris 开发环境的整体构思
·使用AutoMake轻松生成Makefile
·BCB数据库图像保存技术
·GNU中的Makefile
·射频芯片nRF401天线设计的分析
·iframe 的自适应高度
·BCB之Socket通信
·软件企业如何实施CMM
·入门系列--OpenGL最简单的入门
·WIN95中日志钩子(JournalRecord Hook)的使用

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
S D K 学 习 笔 记2 统计顶层窗口

作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站

统计顶层窗口

这里主要用到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编译通过。




相关文章

相关软件