我在dialog对话框上画了许多矩形,现在希望每画一次保存一次。
我想问,采用什么方式来保存CRect对象?可以通过它来查找删除编辑。谢谢!我本来准备用CTypedPtrList< CObList,CRect *> mlist;但这样做保存不了rect .mlist.AddTail(&rect)时报错!谢谢。。请指点,我采用什么样的方式好????

解决方案 »

  1.   

    typedef struct
    {
        int nLeft;
        int nTop;
        int nWidth;
        int nHeight;
    }TRect;
    TRect tRect[nNumber];
      

  2.   

    CRect 并非继承自CObject,所以会有错。
    用矢量或者自己定义数组或者自己写一个能保存指针的列表都可以,不复杂。
      

  3.   

    兄弟,你用的办法是对的,但是你要单独定义一个自己的矩形类,并且从CObject派生,
    Class CMyRect : public CObject{   int top;
       int left;
       int width;
       int height;
       ...
    }
    修改你的代码为:CTypedPtrList< CObList,CMyRect *> mlistOK!
      

  4.   

    兄弟,你用的办法是对的,但是你要单独定义一个自己的矩形类,并且从CObject派生,
    Class CMyRect : public CObject{   int top;
       int left;
       int width;
       int height;
       ...
    }
    修改你的代码为:CTypedPtrList< CObList,CMyRect *> mlist