这是本人在学习MFC 过程中开发的一个小程序,通过这个程序,我确实学到了很多东西,现在拿出来和大家一起分享。
可执行程序上传至: http://download.csdn.net/source/2740051
源代码在: http://download.csdn.net/source/2740063
1. 程序简介
CodeEditor 是 Windows 平台下,一款小巧的 程序语言编辑器 ,旨在帮助您 更便捷地使用电脑 。CodeEditor 支持语法高亮显示、代码折叠、括号匹配、 自动换行、 行 数标记 、 搜 索替换、缩放字体、设置语法高亮规则, 让你全面体验记事本所没有的超强功能;它可以同时编辑多种文件类型, 多个文档。主要是面向C/C++ 的源代码编辑器,另外,还提供了对 资源文件( rc 为后缀名)、 Java 、 C# 、 JSP 、 HTML 和 XML 的语法高亮显示。是 Windows 自带的记事本的理想替代品。
该程序是基于MFC 开发的多文档应用程序,使用了开源控件 Scintilla 。 Scintilla是一个免费的源代码编辑控件,它完全开放源代码,并且提供一个 license 允许用户自由地将它用在开源软件或是商业软件中。 Scintilla 目前提供了 Win32 版本和 Linux 版本。在 Linux 中使用的是 GTK+ ,已经在 Windows95 , nt4.0, Windows2000, windows XP 以及 RedHat Linux8 和 9 中的 GTK+1.2 和 2.0 中测试运行正常,这是一个跨平台的控件。
有关Scintilla 的详细信息,请参考其官方网站: http://www.scintilla.org/
2. 开发参考资料
官网的 Scintilla Documentation、 SciTE 源码 、 vc++深入详解
3. 开发工具及平台
使用Microsoft Visual C++ 2008 程序编写,总代码量 : 大约 2700 行。软件运行时需要有 Scintilla 库 SciLexer.dll (该库已随CodeEditor.exe 一起提供)。另外, CodeEditor 使用了 Microsoft Visual Studio2008 最新的界面库,您的电脑需安装 .net framework 2.0 以上版本。
要对源程序进行编译,请确保您的电脑已安装Microsoft Visual C++ 2008 SP1 。
4. 开发感想
回顾CodeEditor 整个开发过程,从 MFC 单文档版的,再到 MFC 多文档版的,最终使用新的 MFC 界面 库进行了重新开发,这一路走来,我收获了许多。虽然程序使用了开源控件Scintilla ,这简化了我的工作,但是 Scintilla 的帮助文档内容只有一页,网上关于这方面的内容又很少,具体怎样去使用它,只有通过去研究源码 和说明文档 来学习。所以,开发过程并不是十分顺利,不管遇到什么困难,最终都被我解决了,这中间的经历,才是我最大的收获!
转载请注明出处,欢迎大家一起学习交流!O( ∩ _ ∩ )O~