Window 窗口层次关系

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

部分内容

操作窗口列表

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

Ø      EnumChildWindows

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

Ø      EnumThreadWindows

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

Ø      EnumWindows

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

Ø      FindWindow

扫描二维码关注公众号,回复: 1387991 查看本文章

可以使用这个函数通过类名或者使用窗口的标题来找到顶层窗口,这个函数不能够用来找子窗口,这个函数不区分参数的大小写。这个函数在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

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

猜你喜欢

转载自yiranwuqing.iteye.com/blog/935123
今日推荐