如何实现Undo Redo,? 我在写个绘图程序,用何原理如何实现Undo Redo? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 大家来QQ群里讨论吧,我找了几个比较好的技术群,大家分享一下!C#.net 梦想:QQ群:群号:9700396C#.net 开发:QQ群:群号:9715298C# Windows 程序设计:QQ群:群号:14407665C#.Net 学习:QQ群:群号:2448263.net+水晶报表群:QQ群:群号:14819489 好像每个文件的undo、redo操作都是和一个备份文件相关联的。用备份文件保存全部的操作,如果你点击undo、redo时,从备份文件中找到原始数据恢复到当前操作中。 实现了IDraw接口的对象数组,或者ArrayList也好。UnDo时画面清空,从数组或ArrayList画到MaxIndex-1;再UnDo时画的范围又减1.这方面实在没经验,瞎说的。 没做过画图的,觉得画图,我想也是通过很多命令来操作的,比如说点下鼠标开始画线,松开鼠标,结束画线我想如果说,将每个操作都放到arrylist的话,那么undo的时候,只要将最近的那组命令或者动作取出来,放到另外一个redo的allylist上的话。这样应该可以实现吧个人观点 谢谢大家的关注,但我这个绘图不是按命命绘的,比如绘了一个矩形,就new出一个RectObj类,有它的坐标,大小,颜色等,还要Add到一个CollectionBase vs.net2010中在项目属性中改变目标框架,生成失败怎么解决呢? 如何将ListView中某行字体放大? C#如何实现失去焦点时工具栏闪烁的效果 关于工厂模式的问题 如何拆分一个字符串 采集网易博客的评论信息 新年好 问个难问题! 如何删除系统中的某一用户! 求一个磁性窗体的例子(c#) 急救,请教一个数组问题! 关于水晶报表问题。如何,不满一页数据,用空白行填充 有些软件界面做的很好看,是怎么做的啊? winform中textbox绑定sqlserver数据表,int类型的列绑定后用delete键盘删除不了,删除后移动焦点又出现原先的值,但varchar列就没有这样
用备份文件保存全部的操作,如果你点击undo、redo时,从备份文件中找到原始数据恢复到当前操作中。
UnDo时画面清空,从数组或ArrayList画到MaxIndex-1;
再UnDo时画的范围又减1.这方面实在没经验,瞎说的。