| |
|
|
| KompilierenMarqueSéparationSource wurde am 15.07.2007 aus der MMJ-Quellcodesammlung (Dietmar Horn) in die Babyklappe auf XProfan.Com abgelegt:
Desktop: Handles aller Kindfenster aufzählen
PRFellow-Vorlage
Autor: Thomas Hölzer - Alle Rechte vorbehalten
2 Routinen, um alle Kindfenster eines als Parameter
übergebenen %hwnd oder Dialogs aufzuzählen
Bitte beachten:
EnumAllActiveChildren ignoriert unsichtbare und/oder
nicht aktive (EnableWindow) Controls
Def GetWindow(2) !USER32,GetWindow
Def GetNextDlgGroupItem(3) !USER32,GetNextDlgGroupItem
Def IsWindow(1) !USER32,IsWindow
Proc EnumAllChildren
Parameters hparent&
Declare hc&,count%
Case Equ(IsWindow(hparent&),0): Return 0
Let hc&=GetWindow(hparent&,5)
Case Equ(IsWindow(hc&),0): Return 0
While Neq(hc&,0)
Inc count%
Print Handle:,hc&
Let hc&=GetWindow(hc&,2)
Wend
Return count%
EndProc
Proc EnumAllActiveChildren
Parameters hparent&
Declare hc&,hfirst&,count%
Case Equ(IsWindow(hparent&),0): Return 0
Let hfirst&=GetNextDlgGroupItem(hparent&,0,0)
Let hc&=hfirst&
Case Equ(IsWindow(hc&),0): Return 0
While Neq(hc&,0)
Inc count%
Let hc&=GetNextDlgGroupItem(hparent&,hc&,0)
Print Handle:,hc&
Case Equ(hc&,hfirst&): Let hc&=0
Wend
Return count%
EndProc
Cls
EnumAllChildren %desktop
WaitMouse
|
|
|
| |
|
|