我在formview中放了几个控件,在onsize函数中我想获得我所放的控件的大小,请问该怎么做呢??谢谢!

解决方案 »

  1.   

    GetWindowRect获得的rect就是控件的大小,具体察看msdn吧很简单的呵呵
      

  2.   

    可以用GetClientRect吗?说具体怎么实现阿,我刚开始学,谢谢了
      

  3.   

    GetClientRect是获得窗口的客户区,不是整个窗口的大小
    GetWindowRect是整个窗口的大小,就是你说的控件大小比如
    RECT rc;CWnd* pWnd = GetDlgItem(IDOK);
         
    pWnd->GetWindowRect(&rc);那么整个rc就包含了整个控件的大小然后rc.bottom  - rc.top就是高
    rc.right-rc.left就是宽
      

  4.   

    RECT rc;
    CWnd* pWnd = GetDlgItem(IDOK);
    pWnd->GetWindowRect(&rc);
    rc.left、rc.top、rc.bottom、rc.right分别就是控件IDOK的当前左、上、下、右的坐标,rc.Width()、rc.Height()得到控件的宽度和高度。
    用pWnd->GetClientRect(&rc);也能得到一个rc值,但是是相对于这个控件本身位置值,rc.left、rc.top均为0,rc.Width()、rc.Height()也能得到控件的宽度和高度。