设为首页 加入收藏

TOP

2.2.2 面向对象风格的框架(4)
2013-10-07 13:15:25 来源: 作者: 【 】 浏览:75
Tags:2.2.2 面向 对象 风格 框架

2.2.2 面向对象风格的框架(4)

3. 应用程序类GL_Application的设计及实现

类GL_Application为我们的应用程序提供了统一的接口,当我们编制不同的程序时不用再从头开始,只要实现其对应的接口方法即可,大大减少了开发人员的开发难度。具体来说,程序类GL_Application主要提供了4个虚函数供子类继承:Initialize()、Deinitialize()、Update()和Draw(),类的具体定义如下:

 
 

首先,第92行定义了一个自定义消息,在切换窗口模式时发送。下面第94~100行定义了一些成员变量,如GL_Windows窗口类、程序名字和4个标志变量,最后是一个DWORD类型的值用来保存上一次计时器的值。

我们可以看到,在第63行创建了一个全局的Create()函数,继承类必须通过实现该函数来创建一个程序实例。下面看一下GL_Application类的构造函数:

 

构造函数主要传入类的名字,然后设置四个标志变量的初始值,并设置计时器初始值为0。第76~78行定义了3个通用函数,先看void ToggleFullscreen(),它是用来在窗口和全屏之间切换模式的,实现代码如下:

 
可以看出,切换模式的实现非常简单,只用向主窗口发送一条预先定义的切换窗口消息WM_TOGGLEFULLSCREEN即可,具体实现后面会讲解。第二个函数是voidTerminateApplication(),用来结束程序,其实现也很简单,向窗口发送一条WM_QUIT消息即可,然后再更新程序循环标志为false。最后一个是void ResizeDraw(bool enable),用来设置在窗口改变大小时能否绘制的标志。
 
 
 
 
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇2.2.2 面向对象风格的框架(5) 下一篇2.2.2 面向对象风格的框架(3)

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: