<Return[C]><Top>

ChildWindowFromPointEx

Declare Function Api_ChildWindowFromPointEx& Lib "user32" Alias "ChildWindowFromPointEx" (ByVal hWnd&, ByVal px&, ByVal py&, ByVal Flags&)

Declare Function ChildWindowFromPointEx Lib "user32" (ByVal hWnd As Long, ByVal px As Long, ByVal py As Long, ByVal Flags As Long) As Long

指定された親ウィンドウの子ウィンドウであり、指定された座標を含むウィンドウのハンドルを返す。非表示の子ウィンドウ、無効化されている子ウィンドウ、透明な子ウィンドウは、必要に応じて無視できる。

パラメータ
hwndParent
    親ウィンドウのハンドルを指定する。
pt
    調査する点のクライアント座標を入れた POINT 構造体を指定する。
uFlags
    無視する子ウィンドウの種類を指定する。次の値を指定できる。

    値                                          

意味                                                 

    CWP_ALL

どの子ウィンドウも無視しない。

    CWP_SKIPINVISIBLE

非表示の子ウィンドウを無視する。

    CWP_SKIPDISABLED

無効化されている子ウィンドウを無視する。

    CWP_SKIPTRANSPARENT

透明な子ウィンドウを無視する。


戻り値
    指定した座標を含んでおり、uFlags パラメータの指定により処理の対象となる子ウィンドウが存在する場合は、該当する最初の子ウィンドウ

    のハンドルが返る。

    指定した座標が親ウィンドウの内部にはあるが、処理対象の子ウィンドウの中にその座標を含む子ウィンドウが存在しない場合は、親ウィン

    ドウのハンドルが返る。指定した座標が親ウィンドウの外側にある場合、および関数が失敗した場合は、NULL が返る。

解説
    親ウィンドウに関連付けられている子ウィンドウのハンドルは、システムの内部リストに格納して管理されている。

    内部リストでのハンドルの順序は、子ウィンドウの Z オーダーにより決まる。指定した座標を含んでおり、uFlags パラメータの指定により処

    理の対象となる子ウィンドウが複数存在する場合は、内部リスト内で最初に見つかった子ウィンドウのハンドルが返る。