這是本人在學習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~