仿QQ日历时间选择控件

项目介绍:在这个小项目中用到的技术主要是以STL为主,由于大量使用STL来进行数据处理,和在图像绘制方面使用了流行的双缓冲技术所以整个系统能够得到极高的性能,当然即便如此但仍然还有可以优化的空间。整个项目在设计上花了一些时间来保证代码的层次结构清晰,而且也使用了一些C++里面的高级技术,例如多重继承,重载,虚函数,作为一个程序开发的新手,或许能够从中得到一些思路。实际上这个项目被重写过一次,第一次的设计完全是面向过程的,可读性和扩展性均不能达到要求,这一版本是完全基于面向对象的思想来进行设计的,所以比上一个版本更容易阅读也更具层次感觉。
本源代码虽然不多,但是在许多地方使用到的一些技巧仍然值得新手学习,例如在与用户交互事件设计及处理方面(OnClick,OnMove)就使用了DirectUI的思想,即将这些区域当作一个逻辑区域来对待,在自已设计的数据结构中和借助于STL算法来进行高速处理,同时也具备很强的扩展性,这也是DirectUI的核心思想。
此项目在Google Code 上面的开源地址:http://code.google.com/p/calendarmonthcontrol/
浙公网安备 33010602011771号