程序中需要在一个特定的控件(比如IDC_STATIC)范围内显示位图。
找了一些书,好象只有以整个窗口作为显示范围的说明。
请教怎样将CRect与一个特定的控件相关连?
先谢谢了。

解决方案 »

  1.   

    GetDlgItem(IDC_EDIT1)->GetWindowRect(&r);
    --
    GetDlgItem(IDC_EDIT1)->GetClientRect(&r);
      

  2.   

    你要用到控件的大小的时候,就用
    ((CStatic *)GetDlgItem(IDC_STATIC1))->GetClientRect(&rect)
      

  3.   

    给你一个例子,可能有帮助 :
    判断鼠标点是否在控件的矩形区域内DWORD dw = GetMessagePos();CPoint pt(LOWORD(dw),HIWORD(dw));//鼠标的屏幕坐标CRect r;GetDlgItem(IDC_EDIT1)->GetClientRect(&r);GetDlgItem(IDC_EDIT1)->ClientToScreen(&r);if(r.PtInRect(pt))AfxMessageBox("在控件内");