各位大侠: 
小弟是新手想学程序,现在遇到了一上问题,无法解决,希望帮助,问题如下: 
我用CRectTracker类和CRect类编一个画图程序,利用CRectTracker将图形缩放移动,现在想要固定比例缩放,如拉动手柄缩放时圆始终是圆,就好像Windos 自带的画图程序按Shift时就画正圆一样.不知道如何实现,查MSDN上说可以重载AdjustRect实现,由于小弟是新手,不会,不知道那位大侠帮个忙.给个解决方法,不胜感激,尽量写详细点.谢谢各位.
上次提问没给分,因为是新手,不知道请见谅,这次给分,希望大家帮忙.

解决方案 »

  1.   

    确实要继承CRectTracker,本来如果是自己写的代码的话,可以通过把传入的CPoint,也就是鼠标的坐标改成xy成比例就可以了,CRectTracker是MFC的类,所以你就只能自己继承了,然后修改这个坐标值
      

  2.   

    从CRectTracker派生出你自己的类,例如CMYTracker,然后在这个类里重载虚函数OnChangRect(CRect *rect),在这个函数内完成有关圆/椭圆等图形对象的resize拖动变形操作(实际上是根据Crect的改变来实现).