我在一个CView的派生类里面放置了一个子窗口,我直接使用了CStatic,这个子窗口可以使用鼠标来移动和调整大小,现在我已经实现了用鼠标来移动子窗口,可是我不知道怎样使用鼠标来调整大小,是需要重载OnSize吗?

解决方案 »

  1.   

    在你认为合适的时间通过 使用 SetWindowPos 来改变它的大小
      

  2.   

    你检测当光标位置位于该子窗口的边缘,
             GetCursorPos获取光标位置和GetWindowRect获取子窗口位置,然后将光标位置(屏幕坐标)转化为子窗口位置坐标ScreenToClient,
     
    如果在边缘时,重写光标指针图标,并在WM_MOVE中利用SetWindowPos来修改子窗口的大小
      

  3.   

    必须使用这种方法吗?我本来想看看MFC的CWnd是怎么实现改变窗口大小的,可是CWnd的很多事件处理函数在MFC的源码中根本不出现
    不知道普通窗口和CMDIChildWnd是怎么实现改变大小的
      

  4.   

    也看不见的,这是windows处理的事情