`

Window 窗口层次关系

阅读更多

http://www.360doc.com/content/11/0301/00/1206046_97030833.shtml

 

部分内容

操作窗口列表

            下面是窗口列表操作的一些函数:

Ø      EnumChildWindows

使用这个函数得到一个窗口的所有子窗口,包括子窗口的子窗口。不过在列举的过程中这个函数不能够列出正在创建的或者销毁的窗口。

Ø      EnumThreadWindows

使用这个函数可以列出所有属于这个线程的窗口。在这个函数调用之后创建的窗口是不能够被列举出来的。

Ø      EnumWindows

使用这个函数列举出所有顶层窗口,不能够列举出子窗口,要列出所有的顶层窗口,使用这个函数比GetWindow安全。使用GetWindow 来列出所有的窗口,可能会导致程序无限循环,因为在调用GetWindow 的过程中,可能一些窗口已经销毁了。EnumWindows 不能够列举出调用这个函数之后创建的顶层窗口。

Ø      FindWindow

可以使用这个函数通过类名或者使用窗口的标题来找到顶层窗口,这个函数不能够用来找子窗口,这个函数不区分参数的大小写。这个函数在Z轴中寻找窗口,找到了之后,就会返回。

Ø      GetDesktopWindow

得到桌面窗口句柄

Ø      GetNextWindow

使用这个函数得到这个窗口的同属窗口,在16 位窗口系统中GetNextWindow GetWindow 是两个不同的函数,在32 位系统中这个函数是通过GetWindow 来实现的。

Ø      GetParent

如果一个窗口存在父窗口,那么可以通过这个函数得到窗口的父窗口,如果窗口是顶层窗口,则返回其所有者窗口句柄。

Ø      GetThreadDesktop

这个函数用来得到指定线程的所属的桌面窗口句柄,在win95 win98 下面由于不支持多桌面,每次调用该函数都返回同一个值。

Ø      GetTopWindow

可以用这个函数来得到给定窗口的第一个子窗口的句柄,如果传递给函数的参数是NULL 的话,那么这个函数将会返回最上面的顶层窗口。

Ø      GetWindow

应用程序可以调用这个函数来在窗口列表中导航,这个函数有两个参数,一个是窗口的句柄,另外是要得到的窗口句柄和这个窗口之间的关系。

·        GW_HWNDNEXT: 这个函数返回给定窗口的下一个同属窗口

·        GW_HWNDFIRST: 返回给定窗口的前一个同属窗口 

·        GW_HWNDLAST: 返回给定窗口的最后一个同属窗口  

·        GW_HWNDPREV: 返回给定窗口的第一个同属窗口

·        GW_OWNER: 返回给定窗口的所有者窗口句柄

·        GW_CHILD: 返回给定窗口的第一个子窗口句柄   

Ø     IsChild

这个函数有两个参数,两个窗口句柄,判断两个窗口是否存在父子关系  

分享到:
评论

相关推荐

    Window 中窗口的层次关系以及窗口

    #### 一、窗口层次关系概述 在 Windows 操作系统中,窗口是用户界面的基本组成部分。了解窗口及其层级关系对于深入理解 Windows 的内部结构至关重要。本文将详细介绍 Windows 中窗口的层次关系,并探讨相关的属性。...

    窗口关系以及框架

    窗口关系通常涉及到窗口的层次、嵌套、父子关系,以及它们之间的通信和协作。框架(Frameset)则是在Web开发中,HTML的一种特殊结构,用于将浏览器窗口分割成多个独立的区域,每个区域可以加载不同的网页内容。 在...

    利用小软件—— WINDOW ON TOP 来置顶win10窗口

    在Windows系统中,窗口的层次关系是由Z轴决定的,Z轴越高的窗口越靠近用户,因此置顶窗口实际上就是调整了窗口在Z轴上的位置。"WINDOW ON TOP"通过API调用实现了这个功能,使得用户可以方便地控制窗口的层级。 总结...

    VC++6.0窗口绑架(强行改变父窗口)

    当调用`SetParent`时,指定的窗口会被移动到新的父窗口的客户区,并且其层次关系也会相应调整。 然而,当试图改变不同进程中的窗口的父窗口时,就会遇到一些挑战。由于进程间的资源隔离,一个进程无法直接操作另一...

    窗口之间的主从关系及Z-Order.doc

    层叠窗口和弹出窗口合称为顶层窗口,因为它们位于窗口层次结构的较高层级。 子窗口是嵌入在其他窗口内的控件,如按钮、文本框和列表框。它们通常没有自己的边界或标题栏,而是依赖于其父窗口。在Windows桌面平台上...

    将窗口放至所有窗口的最前面(2KB)...

    在VB中,我们可以使用SetWindowPos函数,该函数允许我们改变窗口的层次结构,使其始终位于顶部。具体实现可能如下: ```vb Private Declare Function SetWindowPos Lib "user32" _ (ByVal hwnd As Long, ByVal ...

    X Window架构与启动代码分析

    4. **窗口层次**:窗口是X Window的基本组成单元,每个应用程序通常对应一个窗口。窗口之间有层次关系,可以通过堆叠、平铺等方式组织。 5. **资源管理**:X Window系统使用ID来唯一标识每一个对象(如窗口、字体、...

    WindowView

    WindowView可以帮助开发者调试UI问题,查找窗口层次关系,以及检查各个窗口的属性和消息处理。它能显示窗口的类名、实例句柄、父窗口、子窗口以及各种属性信息,这对于理解和优化应用程序的交互性非常有用。 Window...

    VC++设置窗口的大小和位置

    1. **SetWindowPos()**:这个函数允许你动态地改变窗口的位置、大小、层次关系,以及是否显示或隐藏窗口。例如,你可以使用如下代码来设定窗口的大小和位置: ```cpp SetWindowPos(hwnd, NULL, x, y, width, ...

    完整版窗口结构查询器.rar

    通过窗口结构查询器,我们可以清晰地看到这些层次关系,从而更好地理解和管理窗口层次结构。 窗口的样式和扩展样式决定了窗口的行为和外观。样式包括WS_VISIBLE(使窗口可见)、WS_DISABLED(禁用窗口)、WS_...

    WindowView源代码

    通过查看和解析窗口句柄(HWND)、类名、父窗口以及各种窗口属性,WindowView能够为用户提供一个直观的界面来探索Windows操作系统中的窗口层次关系。 在Delphi编程中,窗口对象是由TForm或TWindow等组件表示的,...

    易语言枚举窗口信息.rar

    6. **窗口层次结构**:在Windows系统中,窗口可以嵌套,形成窗口层次结构。枚举窗口信息时,不仅要考虑顶层窗口,还要关注子窗口。`窗口信息.父句柄`可以获取到窗口的父窗口句柄,从而构建窗口的层级关系。 7. **...

    Linux环境下窗口管理器的分析.pdf

    在 Linux 操作系统中,窗口管理器(Window Manager,WM)扮演着非常重要的角色,因为它负责协调其他客户程序的窗口特征和关系,包括调整窗口的属性(大小、位置等)、窗口之间的层次关系、窗口的刷新等,同时保证...

    窗口抓取、属性查看工具SPY++

    这些信息对于理解和调试窗口层次结构及事件处理流程至关重要。 ### 三、消息监视 SPY++的一个关键特性是能够实时监视和记录Windows消息。你可以跟踪一个特定窗口接收到的所有消息,包括鼠标点击、键盘输入、系统...

    如何获得应用程序主窗口的指针

    在VC++ MFC(Microsoft Foundation Classes)环境中,开发Windows应用程序时,经常需要获取应用程序主窗口的指针。...在实际编程过程中,理解MFC的类层次结构以及对象间的关联关系,将有助于更高效地进行开发工作。

    spy++ 获取窗口

    此外,获取窗口的信息还包括窗口层次结构,即窗口之间的父子关系,这对于理解多层嵌套窗口的交互至关重要。 【标签】"spy"暗示了这是一个用于监视和调试的应用,通常这类工具会提供一种“窥探”或“间谍”的视角,...

    VC窗口置顶程序例子

    在Windows API中,窗口的层次关系是由其Z顺序决定的。窗口在Z顺序中的位置决定了它们在屏幕上的堆叠顺序。位于Z顺序顶部的窗口将覆盖底部窗口,使其不可见。为了使一个窗口始终位于最上层,我们需要修改窗口的Z顺序...

    父子窗口部件的建立

    在Qt中,构建GUI应用程序时经常会涉及到不同窗口部件(Widget)之间的组织关系。其中一种重要的组织方式就是通过“父子”关系来关联不同的窗口部件。这种方式有助于实现更复杂的用户界面布局,并且简化了资源管理与...

    VC++ 窗口置顶程序及源代码

    在VC++中,我们通常会使用`SetWindowPos`函数来改变窗口的位置和层次关系,使其始终位于最前端。`SetWindowPos`函数允许开发者指定窗口的Z序,即窗口在屏幕上的堆叠顺序。当` HWND_TOPMOST `参数被传递时,窗口就会...

Global site tag (gtag.js) - Google Analytics