现在的位置: 首页 > 综合 > 正文

constvar : helloworld

2018年10月16日 ⁄ 综合 ⁄ 共 1346字 ⁄ 字号 评论关闭

1. 工程新建

以WINCE6平台为例, 其它WINCE版本同理。 WINDOWS版的也可以,可以参考下载目录中有一个发放的WINDOWS的RELEASE版本。 另外,最完整的那个DEMO程序是同时有WINCE和WINDOWS版的。

建立一个智能设备WIN32应用程序

选择自己开发用的SDK后,选择windows应用程序,点完成

删除Cvhelllow.cpp中的代码只保留部分头文件和MAIN函数

把include 和 用constvar编好的 lib_ce6拷到Cvhelllow工作目录同级。即vcproj文件的上2级。当然拷到其它的位置也可以,只要包含路径填写正确,代码中lib文件相对路径正确就行。

包含include文件夹,点应用,确定

添加入一些初始化代码

因为框架最初最少需要 墙纸, OVERLAY, 一个普通对话框, 这三个对话框存在,所以我们要新建这三个对话框类。所以代码有些多,可以直接到主页的地址去下载。

同时,我们还要用CVUI编辑这三个对话框对应的资源。 一共需要5个文件: .lan语言文件, .wpp墙纸文件和 3个.rpk对话框资源文件.
 墙纸资源是1个资源包,勾选资源生成类型为墙纸,在资源列表中,只要添加屏幕相同尺寸的PNG打包就可以,再点文件下的保存即可保存为.wpp的资源文件。

主页就暂进拖一个简单的按钮,加一个TEXT控件。 TEXT控件需要语言,所以我们又要用CVLAN工具添加语言。

在资源列表中添加按钮图片,并在文件下面导入CVLAN生成的.LAN语言包,我们就可以生成按钮和TEXT控件啦。

OVERLAY对话框只间打开CVUI,从文件下保存成rpk的皮肤包就行了。表示啥控件都没有。

墙纸对话框比较特殊,需要设置背景, 对话框带背景的话,就可以被换墙纸。所以我们添加一张墙纸后,点设置背景,就可以保存为墙纸对话框的rpk了。

上面的DEMO程序代码,运行时放在机器上的目录结构如下:

运行效果如下:

至此 HELLOWORLD就完成了

2. demo使用说明及一些建议

(1).用工具生成的资源,即界面资源rpk文件,是有区分16位和32位的。

(2).测试资源没有压缩,但是工具实际上有压缩资源这一选项的。可以对想压缩的界面进行压缩.

(3).使用16或32位的资源,CONSTVAR有接口设置当前使用的资源类型(在DEMO代码中有调用例子)。 如果用DDRAW绘图的话,机器升级的OS支持的颜色位深度必须与使用的资源一样。如果是资源类型与OS实际支持不匹配,程序不能正常运行,用GDI应该系统会自己转换。

(4).debug dll只能对应debug exe, release dll只能对应release dll。混用肯定是有问题的。WINCE不支持这样混合搭配。

(5). 对DUI对话框及其所有的控件的操作都应在对话框类内部进行,在外部进行不是不行,只能说代码不是很合理。而且这种情况一旦很多,会非常影响代码的可阅读性,和降低代码的可维护性。

(6). 定义的全局对话框等对象不能直接在代码中对其进行访问,而是应通过constvar获取某一个对话框,再进行操作。这样做的理由除了同上之外,还有就是真正管理这些对象的应该是constvar,虽然说直接访问有可能得到正确的结果,但是这是一种错误的方式。

3

抱歉!评论已关闭.