在编辑器中实现痕迹功能:当在编辑器中修改现有文档时,会在添加的文字内容下加红色下画线,当要删除内容(用backspace delete等键时)时文字内容不会消失,但会在要删的内容中间加红色的单横线或双横线。以表示这些内容被删掉。现有的编辑器没有用任何控件,手写的。 求有类似经验的高手指点迷津。

解决方案 »

  1.   

    编辑器是自己重新写的,vc的,基本上是sdk的
      

  2.   

    由于一直用红线,所以,用richedit的下划线什么的已经不太现实了,我记得这个颜色是自的颜色,不一定是红色!这个你可以测试一下,用word就行!所以,这些线,都必须自己画上去。
    既然是自绘,那么,所有的字都应该是自己绘上去(你可以尝试继承一下richedit,看看是否能只要画线,其他的交给richedit做),在原来的字体中,你可以添加新的东西,比如是否新加、是否是删除的属性(你可以继承字体的结构体),然后,在画的过程中,可以根据你的这个属性,画线!
      

  3.   

    如果你有30000分,那我打算给提供一个编辑器给你。
    我们是用Scintilla修改过来的一个编辑器,在我们的IDE中使用,可以做到完成跟VC编辑器一样的功能。
      

  4.   


    可以看看你这个编辑器的可执行程序?  只是我现在是基于sdk的编辑器,不知道能否有可移植的地方?
      

  5.   


    这个似乎有点那个意思,但是我是基于sdk的,所以再去继承richedit之类的不现实了。
      

  6.   

    楼主,你可以下载Scintilla这个开源的编辑器来进行改就可以了,Code里面也是基于SDK编程的,也不会用到MFC中的类似CEdit, CRichEdit,CDC...
      

  7.   


    还不知道有这个开源的Scintilla
      

  8.   

    最现实的做法是直接在WORD基础上开发。
      

  9.   

    WORD的审阅功能?前台当然自绘了,后台自己定义结构将文本分段、加属性。
      

  10.   

    根据描述,
    一个view程序,每次输入一个字符就显示成红色,每次删除一个字符就显示绿色,就是这样了,给3000000000000000000000分吧。大伙来打土豪。
      

  11.   

    Scintilla去网上下载就行了,做这么高深的编辑器,居然没考察一下世面上的东西。
      

  12.   

    scintilla 没找到相关的, 谁说有 能指明?