“撤销”操作的实现有没有什么公共程序实现的,还是要根据各个程序的不同,自己编写代码实现的?

解决方案 »

  1.   

    一些控件例如EDIT有撤消功能,其它情况就要自己实现了。
      

  2.   

    参考设计模式里面的Command模式,这个不是VC不VC的问题。
      

  3.   

    本人写过一个实现完全内存级别的撤销功能的程序。用的是设计模式里的Command模式,基本原理是数据变化时把变化了的那部分内存用内存拷贝的方式记录下来,撤销或重做时再拷贝回来。这样对用户自定义数据对象仅需改变变化了的数据成员,可以在内存最省的情况下实现撤销功能。