共用方式為


CWnd::ChildWindowFromPoint

判斷,如果有的話,子視窗屬於 CWnd 包含指定的點。

CWnd* ChildWindowFromPoint(
   POINT point 
) const;
CWnd* ChildWindowFromPoint(
   POINT point,
   UINT nFlags 
) const;

參數

  • point
    指定要測試的點的工作區座標。

  • nflags
    指定要略過的子視窗。 這個參數可以是下列值的組合:

    意義

    CWP_ALL

    不要略過任何子視窗

    CWP_SKIPINVISIBLE

    略過不可見的子視窗。

    CWP_SKIPDISABLED

    略過已停用的子視窗

    CWP_SKIPTRANSPARENT

    略過透明子視窗

傳回值

識別包含點的子視窗。 如果指定點位於工作區外,它是 NULL 。 如果該點位於工作區內,但在任何子視窗中不包含, CWnd 傳回。

這個成員函式會傳回包含指定點的隱藏或已停用的子視窗。

多個視窗可能包含指定的點。 不過,這個函式會傳回只包含 CWnd按*遇到的第一個視窗。

*傳回可能是暫時的,而且不應儲存供日後使用的 CWnd

範例

void CMyDlg::OnFindCenterChild() 
{
   CRect rect;
   GetClientRect(&rect);
   CWnd* pWnd = ChildWindowFromPoint(
      CPoint(rect.Width()/2, rect.Height()/2), 
      // Top left is always 0, 0.
      CWP_SKIPINVISIBLE);
   TRACE(_T("Center window is 0x%08x\n"), pWnd->m_hWnd);
}

需求

Header: afxwin.h

請參閱

參考

CWnd 類別

階層架構圖

CWnd::WindowFromPoint

ChildWindowFromPoint