`
isiqi
  • 浏览: 16489857 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

WINCE应用的UI实现方案 —— 上篇:几种UI实现方案比较

阅读更多

一、MFC的硬伤

在接手现在这个项目之前,我对WINDOWS平台上的UI开发还是个白痴,除了MFC,就只知道GDI了。而且居然大言不惭地说用MFC只能画画灰色的对话框和按钮。但不论如何,在嵌入式这种对成本极度敏感的项目上,我是不会拍板用MFC的。假设极端情况,定制后的系统是31.8M,我放一个ARMV4I上的MFC DLL进去,大概500多K,那么只有两种选择,要么把32M的FLASH换成64M的——我的上司会把我给砍了,要么把应用层的UI代码全部重写——我的下属会把我给剁了。另一方面,WINCE上的应用软件我看过不少开源代码,也接触了一些外包的软件,还真没见过谁用MFC的。网上公论用MFC后会导致程序在不同平台上移植性降低,因为你不能指望别人的平台给你准备好奢侈的MFC。另一方面,多数高手都不屑用。我不是高手,但可以学人家摆谱,于是“不会用”就变成了“不屑用” ^_^

二、GDI的痛苦

把整套UI从CreateWindow开始写起,的确很累人。我写了500多行才勉强实现BUTTON类,另一个同事也用了500行左右才实现了TRACK BAR类,而且还未经测试,也没有很正式的CODE REVIEW。如果工业设计中心多增加几种图样,那么我们就得多些几个基类,然后再赔进去CODE REVIEW的时间、测试时间、BUG FIX的时间。不痛苦,那是不可能滴~。

三、GWES的探路,我不是先锋

群众的智慧是无穷的。当我这组同事的思维都受制于我的GDI方案时,从通信部过来协助完成项目的软件工程师从WINCE500的一个应用SAMPLE CODE里把DialogBox函数给抓出来了。我认为自己在定UI实现方案上很失败的一点就是习惯性思维地从eVC里建立DIALOG RESOURCE后,立刻就要去点Class Wizard, 然后就是关联MFC类。而他却画出来的DIALOG和BUTTON后,拿着RESOUCE ID从DialogBox函数建立起UI。并且我又习惯性思维地认为DialogBox并不在STANDARD SDK 500里面,但他确实从STANDARDSDK_500里不引用其它LIB和DLL就把DialogBox和BUTTON用起来了,然后过来找我谈论如何把图片叠加在DIALOG和BUTTON上。泪奔一百里~ 我应该去找块豆腐撞死~

四、最后的攻关,GWES API能否成为我们需要的坚实地基
GWES系列API能否实现我们所需的所有UI功能呢?没有人知道,需要评估。刚才起草稿时,我把这些都写在同一篇文章里了。现在觉得还是分篇好些,毕竟主题不同。请继续看中篇:GWES方案上几技术难点的解决

分享到:
评论

相关推荐

    wince环境实现多彩绚丽按钮用于UI设计

    通过以上知识点的学习和实践,开发者可以在WinCE环境下实现多彩、绚丽的按钮,从而提升应用的UI设计质量,吸引更多的用户。压缩包中的"Windows CE彩色按钮"文件可能包含了一些示例代码或资源,可以帮助你更好地理解...

    开源wince/window directui界面框架

    开源的DirectUI框架为Wince平台提供了这样的解决方案,使得开发者能够在嵌入式设备上构建出与桌面系统相媲美的界面。同时,由于其开源性质,开发者可以查看源代码,学习和优化代码,甚至向社区贡献自己的改进。 该...

    嵌入式 WinCE UI 类库 源码 XML DEMO

    嵌入式WinCE UI类库源码XML DEMO是一个针对Windows CE操作系统的用户界面开发解决方案。这个类库提供了一种高效且灵活的方式来设计和管理嵌入式设备的用户界面,尤其是那些资源有限的设备。其核心特性是通过XML来...

    C# WM wince UI集合版(7 IN 1)

    5. **模拟iPhone UI**:"IPhoneUI"可能包含了模仿iPhone界面的设计,包括圆角矩形、半透明效果、滑动切换页面等特性,这对于希望在非iOS设备上实现类似体验的应用开发非常有价值。 6. **数据绑定**:在C#中,数据...

    很帅气的GPS导航界面(可移植做wince应用程序的UI)

    标题中的“很帅气的GPS导航界面(可移植做wince应用程序的UI)”指的是一个设计精良、用户体验良好的GPS导航界面,它可以被移植到Windows CE(Wince)操作系统上,作为应用程序的一部分运行。Windows CE是一种微软开发...

    wince UI 定制方法

    然而,在Windows CE .NET中,即使运行在自定义壳层上的应用程序,也可以拥有完全不同于Windows的经典外观和感觉。 1. **使用Microsoft Internet Explorer作为设备的壳层** 这是定制UI的一个非常灵活的选择。通过...

    wince流驱动举例——点灯

    本文将深入探讨“wince流驱动举例——点灯”这一主题,主要涉及流驱动的基本概念、AU1200主板的硬件特性以及如何通过编程实现LED灯的控制。 首先,流驱动是操作系统内核与硬件设备之间通信的一种机制,它允许应用...

    嵌入式系统应用开发(WinCE版)——课件

    嵌入式系统应用开发在现代科技领域中占据着至关重要的地位,特别是在WinCE版本的系统上,它为各种设备提供了高效、可靠的操作平台。WinCE,全称Windows Embedded Compact,是微软公司推出的一种轻量级操作系统,适用...

    WINCE UI iphone

    标题中的"WINCE UI iphone"指的是在Windows CE操作系统上实现的一种仿iPhone用户界面的设计。Windows CE,全称Windows Embedded Compact,是微软推出的一个嵌入式操作系统,广泛应用于掌上设备和工业控制等领域。而...

    wince之应用程序设计

    1. Native Application:使用WinCE API直接编写的本地应用程序,可以实现高效的性能和对硬件的直接访问。 2. Managed Application:基于.NET Compact Framework,利用C#或VB.NET等语言编写,具有更好的跨平台能力和...

    wince6.0下可用应用程序

    7. **部署与更新**:应用程序可以通过ActiveSync或Windows Device Portal进行部署到WinCE 6.0设备上。此外,系统支持远程更新和补丁安装,以便于维护和升级。 8. **安全性和稳定性**:WinCE 6.0提供了基础的安全...

    WINCE应用开发实例

    【标题】:“WINCE应用开发实例”涉及到的是在Windows Embedded Compact(简称WINCE)操作系统上进行应用程序的开发。Windows Embedded Compact是一种嵌入式操作系统,广泛应用于工业设备、医疗设备、移动设备等领域...

    wince ui编程基础

    在Windows CE (WinCE)平台上进行UI编程是一项挑战性较高的任务,主要因为它与Windows桌面平台在可用资源和库方面存在显著差异。Windows平台拥有丰富的皮肤控件和视觉元素,使得开发者能够轻松创建出美观的应用程序...

    昆仑通态wince开发方案.rar

    【标题】"昆仑通态wince开发方案"指的是在基于Windows CE(简称wince)操作系统上,针对昆仑通态触屏设备的底层系统研发的一种详细规划。Windows CE是一种微软公司开发的嵌入式操作系统,广泛应用于工业自动化、医疗...

    Wince Ipone 效果实现

    压缩包中的文件"WINCE IPONE 效果实现"很可能包含了一些示例代码或者教程,用于指导开发者如何在Wince平台上实现上述功能。这些文件可能包括源代码、资源文件、项目配置文件等,帮助开发者一步步构建出类似iPhone的...

    WinCE应用程序开机自动运行

    WinCE应用程序开机自动运行 WinCE应用程序开机自动运行 WinCE应用程序开机自动运行 WinCE应用程序开机自动运行 WinCE应用程序开机自动运行 WinCE应用程序开机自动运行 WinCE应用程序开机自动运行 WinCE应用程序开机...

    WinCE应用程序示例代码(vs2005+wince5.0)

    在本文中,我们将深入探讨如何使用Visual Studio 2005和Windows CE 5.0(简称WinCE)开发C++应用程序,并结合SQLite数据库引擎进行数据管理。这个压缩包文件包含了一个实例,可以帮助开发者理解WinCE环境下的应用...

    WINCE5.0应用程序

    在Windows CE 5.0(简称WINCE5.0)平台上进行应用程序开发,开发者通常会利用Visual Studio 2005(VS2005)作为集成开发环境(IDE)。这个平台提供了丰富的工具和资源,使得开发者能够创建高效、可移植的嵌入式应用...

Global site tag (gtag.js) - Google Analytics