WIN API - Window Relationships: Parent, Owner, Z-order
by kero <geocities.com/xmemor>

Usage:

(v.2009-06-04)

  'real [child]' -     RealChildWindowFromPoint  ChildWindowFromPointEx :
    WS_EX_LAYOUTRTL  .

(v.2007-03-27)

     /   .
 (  ,     ).

   static -      .
    / '',     -  .

 'Lock' -     F8, F9.

   'Window' +  <Lock>:
  a)    +  F8

  b)   combobox- +   

   'new Parent|Owner':
  a)    +  F9 (     'Window')

  b)   combobox- +   

  combobox- -  ,      :
  'Top-L' =>  top-level  (+ message-only )
  'All' =>   (+ message-only )
  'Desc' =>    Window
  'Pid' =>     ,   NewParent|Owner
  'Tid' =>     ,   NewParent|Owner
  'Point' =>     ( WindowRgn)

 'M /' =>      ComboLBox (   ), on/off

  'sWaP'   <Lock> =>   'Window' / 'Parent|Owner'

  'P' ('W') =>  - 'Parent|Owner' ('Window')

  -:
  'Pop /' => WS_POPUP  on/off
  'Child /' => WS_CHILD  on/off
  'min /' => minimize / restore
  'Vis / Hid' => Visible / Hidden
  'En / Dis' => Enable / Disable
  'ClipChild +/-' => WS_CLIPCHILDREN  on/off
 'Text' => WS_SETTEXT   
 'Id' =>  Id/hMenu    (  Id/hMenu  +/-WS_CHILD,-/+WS_CHILD)
 'X' => post WM_CLOSE
 'Topmost','Notopmost','Top','Bottom' =>  SetWindowPos + HWND_*"
 'Up','Down' =>  Z- /

 'First','Prev','Next','Last' =>  -  GetWindow + GW_HWND*  (Z-order siblings)

   'SetParent*'   'SetWindowLong(GWL_HWNDPARENT)' =>         (  64  ):

  PARENTOWNER struct
    hWnd				DWORD ?	// () 
    hWndParent 	DWORD ? //  
    ClientRect	RECT <> //     
    Exstyle			DWORD ? //   
    Style				DWORD ? //   
    FncParam		DWORD ? //  : =0 => SetParent, =1 => SetWindowLong(GWL_HWNDPARENT)
    hPrntOwner	DWORD ? //    
    Id					DWORD ? //   Id ( ) / hMenu ( top-level )
    reserve			DWORD ? // reserve
  PARENTOWNER ends
 
    : 'Undo'/'Redo', 'n' -  Undo +  . At your own risk :-)
    : F8 + F9 + <Close>
  -     , , .

    :
  L : WS_EX_LAYERED
  T : WS_EX_TOPMOST
  C : WS_CHILD
  P : WS_POPUP
  O : Overlapped  (not WS_CHILD + not WS_POPUP)
  X : WS_CHILD + WS_POPUP (,     :-) )
  m : mINIMIZED
  M : Maximized
  V : Visible
  H : Hidden
  D : Disabled
  E : Enabled
	+/- : WS_CLIPCHILDREN

   :
  . : top-level
  = : top notopmost top-level 
  + : child
  ? : Tid(child)!= Tid(parent)
  ! : Tid(top-level) = Tid(Desktop)
  o : message-only
