天天玩小游戏盒子の总结

来源:互联网 发布:js制作滚动条 编辑:程序博客网 时间:2024/04/30 04:23

  大家好,由于当时我的技术还处于初级,开发天天玩小游戏遇到了很多bug,现把测试版总结出来,希望给初学者有所帮助。

  总结:1、DirectUI渲染方式移植到MFC中使用,会有很多问题出现,例如画图计算量大,因为DirectUI是采用计算字符串如何画图的。(按照当时的技术,开发能力有限)

2、win7等以后的系统版本渲染不兼容,会出现很多渲染bug。(画图函数问题)

……

唯一的好处就是,渲染方便,可以换图以及调整对比色,但不能牺牲性能换取效果,所以,在MFC中采用DirectUI渲染方式是错误的。

     采用DirectUI渲染从一开始就设计出错了,所以我看了很多开源项目,发现自己很多的不足,对于初学者,看开源项目是最直接的成长,虽然代码思想是继承别人的,但是我们可以衍生很多新的技术,希望初学者谨记!~



    下面,我来讲解下天天玩测试版源码分析。
    天天玩是一个在网页上玩在线游戏的盒子,盒子是采用MFC框架,测试版是采用继承相关控件自绘的,发布版是采用自绘(不是系统自带的),但IE控件是继承CHtmlView,说白了,天天玩就是一个简单的ie游览器,没啥技术含量,不过适合初学者认识MFC以及相关控件。

  天天玩项目树如图:

    Web控件,CHtmlCtrl 继承了 CHtmlView ,实现了js调用,拦截广告(采用返回指定容器屏蔽广告),刷新,加载完成判断,以及界面效果属性设置。

  共同文件下,定义了头信息,以及事件控件id等信息。

  基类窗体,采用双缓冲绘图,所以我把双缓冲写到了基类中,子类自绘自行绘画就行。

  头文件里,就是包含了相关对话框以及相关控件。

    请求,向服务器发送信息。

   控件,定义了很多自绘控件。

    文件,ini文件操作。

    渲染,采用了DirectUI渲染。

    实现非常简单,不懂的就看源码。
    希望大家以此为鉴,项目开始一定要把相关框架熟悉,否者到头来bug多得你无法想像。
   

   源码包