Delphi 窗体函数 GetTopWindow、GetNextWindow
关于 GetWindow函数 的介绍 ,请点击超链接 GetWindow
GetTopWindow
函数功能:该函数检查与特定父窗口相联的子窗口z序,并返回在z序顶部的子窗口的句柄。
函数原型:HWND GetTopWindow(HWND hWnd);
参数:
hWnd:被查序的父窗口的句柄。如果该参数为NULL,函数返回Z序顶部的窗口句柄。
返回值;如果函数成功,返回值为在Z序顶部的子窗口句柄。如果指定的窗口无子窗口,返回值为NULL。
若想获得更多错误信息,请调用GetLastError函数。
速查:Windows NT:3.1以上版本;Windows:95以上版本:Windows CE:不支持;头文件:Winuser.h:库文件;user32.lib。
1 2 3 4 | //声明: GetTopWindow( hWnd: HWND; {指定的窗口句柄} ): HWND; {失败返回0; 成功返回最顶层的子窗口句柄} |
获取最顶层窗口的操作:
1 2 3 4 5 6 7 | var h1,h2: HWND; begin h1 := GetTopWindow(GetDesktopWindow); h2 := GetWindow(GetDesktopWindow, GW_CHILD); ShowMessage(Format( '%d,%d' ,[h1,h2])); {132540,132540} end ; |
GetNextWindow
函数功能:该函数返回z序中的前一个或后一个窗口的句柄。下一窗口在指定窗口的下面,前一窗口则在上面。如果指定的窗口是顶端窗口,该函数返回下一个(或前一个)顶端窗口的句柄。如果指定的窗口是顶层窗口,函数返回下一个(或前一个)顶层窗口的句柄。如果函数是子窗口,则函数搜索下一个或前一个子窗口的句柄。
函数原型:HWND GetNextWindow(HWND hWnd,UNIT wCmd);
参数:
hWnd:一个窗口的句柄。窗口句柄在wCmd参数的基础上获得的相对于这个窗口的句柄。
wCmd:指明窗口返回的是前一窗口的句柄还是后一窗口的句柄。该参数可以是下列两个值之一:
GW HWNONEXT:返回在给定窗口的下面窗口的句柄。
GW_HWNDPREV:返回在给定窗口的上面窗口的句柄。
返回值:如果函数成功,返回值是前一窗口(或后一窗口)的句柄。如果前后窗口不存在,则返回值为NULL。若想获得更多错误信息,请调用GetLastError函数。
备注:在设定了GW_HWNDNEXT或GW_GETPREV标志时,调用该函数与调用GetWindow函数相同。
速查:Windows NT:3.1以上版本;Windows:95以上版本:Windows CE:不支持:头文件:Winuer.h;库文件:user32.lib。
//uCmd 可选值:
GW_HWNDFIRST = 0; {同级别第一个}
GW_HWNDLAST = 1; {同级别最后一个}
GW_HWNDNEXT = 2; {同级别下一个}
GW_HWNDPREV = 3; {同级别上一个}
GW_OWNER = 4; {属主窗口}
GW_CHILD = 5; {子窗口}
创建时间:2020.01.03 更新时间:
来源:https://www.cnblogs.com/guorongtao/p/12143053.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报