基于Scintilla开发的MFC多文档源代码编辑器CodeEditor(一)

来源:互联网 发布:sql执行存储过程 编辑:程序博客网 时间:2024/06/06 10:41

这是本人在学习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~

原创粉丝点击