请教大家:wince6.0下有什么好的UI控件

后使用快捷导航没有帐号?
请完成以下验证码
查看: 5872|回复: 16
开发高质量的、随时修改的WinCE应用程序UI的思路?
在线时间37 小时
TA的帖子TA的资源
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
引用 3 楼 91program 的回复:
底层用驱动实现,和用EVC或.Net没有关系
功能实现上,都可以实现的
性能差多少,要看硬件配置,如果配置高一些,两者的性能是差不多的。就是担心硬件的配置,跑.Net会吃力
EVC也要分使用MFC或SDK,如果是MFC,修改界面也很快的。当然前提是应用的框架好!
所以一切,在于设计,不在于用EVC或.Net。所以不要对工具抱太多幻想---用.Net开发会更容易,是不对的
在这个帖子中
[url=http://topic.eeworld.net/u//5a4a30c8-1c1b-4f2f-842f-dfc.html][/url]
91program中你给我的回复,小弟看了有所感悟,不过这里还是有一些疑问,向要向你请教一下。
目前我所知道的一种UI的开发方法是:
以主界面为例(应用程序是全屏的),320x240的屏幕,按照客户的要求,把主界面的图片用coraldraw做好,bmp格式的。程序做好主界面后,假设主界面有四个按钮,第一个按钮的的范围是左上角是(40,40),右下角是(80,80)的一个矩形,然后程序监视触摸屏的点击,当发现点击是在(40,40),(80,80)这个范围内时,首先用事先画好的一个40x40的bmp图片,更新这个范围的图像显示,然后再实现转入下一个界面或实现相关功能。其它界面的制作都类似。
用这种方法开发出来的UI显示画面是很精美的,因为都是用coraldraw制作出来的bmp图片,而且完全满足客户的需求。
这样就会产生一个问题,因为客户对UI都有自己的要求,完全修改UI是很常见的事情,这样就会使得工作量非常大。
请指点一下,关于制作出精美的、可以随时修改的UI,有没有更好的思路?
在线时间0 小时
TA的帖子TA的资源
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
基本只能这样了!也希望有更好的方法!
在线时间1 小时
TA的帖子TA的资源
一粒金砂(初级), 积分 2, 距离下一级还需 3 积分
一粒金砂(初级), 积分 2, 距离下一级还需 3 积分
我以前是用脚本加图片的形式做的, 脚本可以定义位置等信息, 图片可以随时更换, 应该可以.
在线时间2 小时
TA的帖子TA的资源
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
在这里希望大家能提供一个思路,比如说一个基于.net CF的开源系统什么之类的。
因为我有这样的经验,以前做视频处理的一个程序的时候,碰到一个难点,自己解决是很费时,费力,也不一定能做的出来,后来经别人的帮助,找到了一个外国人写的一段C语言代码,把问题解决了。个人觉的关于WinCE的UI的开发是不是有更好的方法等待我们去发掘呢?
在线时间1 小时
TA的帖子TA的资源
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
引用 2 楼 eagle1597 的回复:
我以前是用脚本加图片的形式做的, 脚本可以定义位置等信息, 图片可以随时更换, 应该可以.
脚本加图片?我目前对WinCE还不太熟,脚本指的是什么?还有对于这种开发思路,能详细解释一下吗?
在线时间0 小时
TA的帖子TA的资源
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
引用 2 楼 eagle1597 的回复:
我以前是用脚本加图片的形式做的, 脚本可以定义位置等信息, 图片可以随时更换, 应该可以.
用的比较多的方法
在线时间0 小时
TA的帖子TA的资源
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
引用 4 楼 lijinyan3000 的回复:
引用 2 楼 eagle1597 的回复:
我以前是用脚本加图片的形式做的, 脚本可以定义位置等信息, 图片可以随时更换, 应该可以.
脚本加图片?我目前对WinCE还不太熟,脚本指的是什么?还有对于这种开发思路,能详细解释一下吗?
格式可以自己定义,用TXT文件就OK的
在线时间0 小时
TA的帖子TA的资源
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
不知道楼主是不是了解ANDROID,在那上面做UI就很方便,主要的思想是把LAYOUT写在XML当中的,然后解析XML,生成布局,这样的可定制性也会比较强。不用改代码,只改XML就OK了。不知这样说你是不是能更了解91大哥的思路了。
其实从你的问题上看,感觉你现在最缺的不是对WINCE的了解,而是对于设计模式和整体架构的把握。这种应用是装饰模式的典型应用,另外还要注意用ILAYOUT把布局算法用组合的方式封装感觉会更好。另外要记得给每个控件加个OBSVER来监视控件的状态。大体上说就这些建议。
在线时间0 小时
TA的帖子TA的资源
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
脚本你自己写啊, 你想怎么定义就可以怎么定义的.
在线时间1 小时
TA的帖子TA的资源
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
引用 7 楼 BEYONDMA 的回复:
不知道楼主是不是了解ANDROID,在那上面做UI就很方便,主要的思想是把LAYOUT写在XML当中的,然后解析XML,生成布局,这样的可定制性也会比较强。不用改代码,只改XML就OK了。不知这样说你是不是能更了解91大哥的思路了。
其实从你的问题上看,感觉你现在最缺的不是对WINCE的了解,而是对于设计模式和整体架构的把握。这种应用是装饰模式的典型应用,另外还要注意用ILAYOUT把布局算法用组合的方式封装感觉会更好。另外要记得给每…
其实就种也是脚本加图片的思路, 如果有比较正规的开源项目可以直接拿来用,应该还是很方便的.
比如我的就比较简单, 在脚本文件里定义每个图片的位置与大小,名称, 然后程序中读出来再加载图片就行了. 个人觉得后期要是有更换工作还是很方便的.
在线时间0 小时
TA的帖子TA的资源
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
我也顺便打个广告,本人也有支持ESRI ARCGIS的.shp文件的地图的Windows mobile 5.0/6.0手机GIS地图软件----GPS移动GIS(GPSMobileGIS),PC端的服务软件----移动GIS服务平台(GPSMobileGISServer),可成套出售,可以完成以下功能:
1,通过GPRS上网连接后台服务端程序来实时传输在户外工作采集的数据到后台数据库!
2,可以实时发回PDA的GPS信息,在后台地图上直接定位PDA用户的位置,也可以下发PDA的经纬度信息让PDA用户定位和跟踪其它PDA用户,了解自己与其它PDA的位置关系,起到定位和跟踪的作用!
3,可以发回PDA当前所在地名如在天河城附近等,实现在外面工作就知道在何时何地上班打卡的效果,同时可以在后台为相应的PDA用户设置固定时长返回一次当前位置的GPS信息确保对相应PDA用户的定位,跟踪与监控!
4,移动GIS服务平台可以对PDA用户进行登记,注销等管理,在移动GIS服务平台登记的PDA用户才可登陆此服务器,依据IMSI和IMEI号来进行登陆验证,安全可靠,
5,可以对在外面工作的PDA用户进行任务指派和任务管理如
& &PDA号码:
& &任务名称:测试线路
& &任务说明:主要是在天河北路一带的电力设施进行检测!
6,(此功能为信息采集的核心功能)用户可自行设置需要采集信息的对象及其属性,指派给指定的PDA用户,如测试电路的属性模板:
& & //0-编辑属性(可多个) ; 1-下拉属性(可多个) ; 2-选择属性(可多个) ; 3-大文本编辑框(可以没有此属性,但有此属性时只能有一个) ; 4-列表属性(可以没有此属性,但有此属性时只能有一个)(属性0+属性1+属性2/2+属性2%2)&=28
& & name,名称,0,;beproject,所属项目,0,;type,类型,1,0:小-1:中-2:大;complete,完成,2,;remark,备注,3,;listbox,设备表,4,
7,可以实时上传文件到后台服务器,实时下载后台服务器的文件和实时更新PDA上客户端的系统!
8,可以实时采集和传输图像信息!
跟据您的需要,还可以增加其它功能!
可以应用在以下系统:
& &&&1、PDA移动办公如户外,异地打卡,上班;
& &&&2、GIS林业资源监控系统;
& &&&3、GIS电力巡检系统等;
& &&&4、GIS通信资源如移动,联通,电信的管线资源巡检系统等!
在线时间1 小时
TA的帖子TA的资源
像xml和ini的解析有很多开源的库可用,难点可能是把那些bmp封装成一套灵活通用的UI控件框架。需要对windows的控件和设计方面比较好的理解和积累哦。
在线时间2 小时
TA的帖子TA的资源
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
最近在网上看到过两个前辈的博客写过这方面的经验,大家可以参考下:
http://blog.eeworld.net/norains/archive//3194979.aspx
http://www.cnblogs.com/walzer/archive//704982.html
在线时间0 小时
TA的帖子TA的资源
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
引用 7 楼 BEYONDMA 的回复:
不知道楼主是不是了解ANDROID,在那上面做UI就很方便,主要的思想是把LAYOUT写在XML当中的,然后解析XML,生成布局,这样的可定制性也会比较强。不用改代码,只改XML就OK了。不知这样说你是不是能更了解91大哥的思路了。
其实从你的问题上看,感觉你现在最缺的不是对WINCE的了解,而是对于设计模式和整体架构的把握。这种应用是装饰模式的典型应用,另外还要注意用ILAYOUT把布局算法用组合的方式封装感觉会更好。另外要记得给每…
我设计界面的时候同样遇到了楼主面临的问题
如果想学习设计模式和整体架构,有什么书籍和资料推荐吗?
在线时间0 小时
TA的帖子TA的资源
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
引用 12 楼 echotirooo 的回复:
最近在网上看到过两个前辈的博客写过这方面的经验,大家可以参考下:
http://blog.eeworld.net/norains/archive//3194979.aspx
http://www.cnblogs.com/walzer/archive//704982.html
感谢提供的网址,上去看了一下,提供了一些思路。
在线时间0 小时
TA的帖子TA的资源
一粒金砂(初级), 积分 2, 距离下一级还需 3 积分
一粒金砂(初级), 积分 2, 距离下一级还需 3 积分
以后坚决不用百度,感觉有种被骗的感觉,GOOGLE也只是五十步笑百步,
但是在没有搜索的网络里,我们会死,想要搜索就得被勒索,如果不能失去它,那也只能让强奸来得更猛烈些吗?
连我们的搜索视野被人强奸了,以后还有什么不能被人强奸啊?
另外各位看看下面这两个帖子!
http://topic.eeworld.net/u//5ade4cdf-3a30-4481-be9d-1b97b88cde48.html
http://topic.eeworld.net/u//cf7d0af3-35cc-4fb7-9dc2-e5.html?seed=
各位版主,除了封人家ID,你还能干点别的不?
哪位版主封的,站出来说明一下!
不会版主真的怕倒版吧?
本来移动平台人气就不旺,还有这样的版主随意封别人的ID,我看大家都不用为这里混了!
我就顺便帮他打个广告,看是不是还没人理!
我也顺便打个广告,本人也有支持ESRI ARCGIS的.shp文件的地图的Windows mobile 5.0/6.0手机GIS地图软件----移动GIS(MobileGIS),PC端的服务软件----移动GIS服务平台(MobileGISServer),可成套出售,可以完成以下功能:
1,通过GPRS上网连接后台服务端程序来实时传输在外工作的数据到后台数据库!
2,可以实时发回PDA的GPS信息,在后台地图上直接定位PDA用户的位置,也可以下发PDA的经纬度信息让PDA用户定位和跟踪其它PDA用户,了解自己与其它PDA的位置关系,起到定位和跟踪的作用!
3,可以发回PDA当前所在地名如在天河城附近等,实现在外面工作就知道在何时何地上班打卡的效果,同时可以在后台为相应的PDA用户设置固定时长返回一次当前位置的GPS信息确保对相应PDA用户的定位,跟踪与监控!
4,移动GIS服务平台可以对PDA用户进行登记,注销等管理,在移动GIS服务平台登记的PDA用户才可登陆此服务器,依据IMSI和IMEI号来进行登陆验证,安全可靠,
5,可以对在外面工作的PDA用户进行任务指派和任务管理如
&&PDA号码:
&&任务名称:测试线路
&&任务说明:主要是在天河北路一带的地下管线进行检测!
6,(此功能为信息采集的核心功能)用户可自行设置需要采集信息的对象及其属性,指派给指定的PDA用户,如测试线路的属性模板:
& & //0-编辑属性(可多个) ; 1-下拉属性(可多个) ; 2-选择属性(可多个) ; 3-大文本编辑框(可以没有此属性,但有此属性时只能有一个) ; 4-列表属性(可以没有此属性,但有此属性时只能有一个)(属性0+属性1+属性2/2+属性2%2) &=28
& & name,名称,0,;beproject,所属项目,0,;type,类型,1,0:小-1:中-2:大;complete,完成,2,;remark,备注,3,;listbox,设备表,4,
7,可以实时上传文件到后台服务器,实时下载后台服务器的文件和实时更新PDA上客户端的系统!
8,可以实时采集和传输图像信息!
跟据您的需要,还可以增加其它功能!
在线时间0 小时
TA的帖子TA的资源
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
一粒金砂(初级), 积分 0, 距离下一级还需 5 积分
也可以直接用第三方的框架,可以去这里看看,www.wceui.cn, 也是用脚本来定义界面。
EEWORLD 官方微信
Powered bywince6.0下labview的串口使用 - LabVIEW论坛 -
中国电子技术论坛 -
最好最受欢迎电子论坛!
后使用快捷导航没有帐号?
林超文手把手教你学!
教你1000种电路设计思路
张飞硬件电路之PFC全集
参与免费送VIP+原创视频
运放、ADC、电磁兼容
wince6.0下labview的串口使用
08:54:49  
我在wince6.0下安装了NI VISA驱动,但是还是无法使用labview的串口函数,运行时前面板上不能显示串口相关的控件。我在其他地方看到有人说wince下无法使用VISA函数?那wince上的labview岂不是基本就废了?还有其它通讯方法?
13:49:39  
VISA安装有问题,我一直在wince上使用labview开发串口,还可以使用NI的采集卡
助理工程师
09:41:02  
VISA安装有问题,我一直在wince上使用labview开发串口,还可以使用NI的采集卡
你用的是WINCE5.0吧?我用的WINCE6.0也实现不了。
助理工程师
15:06:43  
楼主,你的串口实现了吗?指点下
10:04:20  
楼主,你的串口实现了吗?指点下
wince5.0和6.0都可以的,只是控件有点出入,需要进行调整,有问题可加我的微信
11:59:04  
楼主,你的串口实现了吗?指点下
实现了,不用VISA,用GBIP(是不是这么拼的不记得了),这个函数使用时不需要安装驱动
14:13:37  
wince5.0和6.0都可以的,只是控件有点出入,需要进行调整,有问题可加我的微信
微信好像是错误的啊
11:55:49  
现在实现了 ,有问题可以加我扣扣
林超文手把手教你学!
教你1000种电路设计思路
张飞硬件电路之PFC全集
参与免费送VIP+原创视频
运放、ADC、电磁兼容
Powered by
供应链服务
版权所有 (C) 深圳华强聚丰电子科技有限公司One World,One Dream!
如何修改wince下的UI(...菜单等
桌面UI主要涉及到CDesktopView类 ,CDesktopView类继承于CDefShellView类;如果要更改桌面的UI表现形式,只要从这个类入手即可.CDesktopView类位于
$(_WINCEROOT)/PUBLIC/SHELL/OAK/HPC/CESHELL文件夹中.
1.更改右键弹出菜单选项
桌面的弹出菜单有两种:一种是在桌面按右键弹出的FOLDER_VIEW_MENU_OFFSET;另一种是在图标上点右键弹出的ITEM_MENU_OFFSET.两种菜单的完整表现如下:
/******************************************************
//FOLDER_VIEW_MENU_OFFSET菜单
(pos:FOLDER_VIEW_MENU_OFFSET)
--------------
图标排列方式
--------------
粘贴快捷方式
--------------
新建文件夹
--------------
*******************************************************/
/******************************************************
//ITEM_MENU_OFFSET菜单
(pos:ITEM_MENU_OFFSET)
----------
----------
----------
*******************************************************/
在弹出菜单之前,都需要调用CDesktopView::HandleInitMenuPopup()函数对菜单进行构建;所以,要更改菜单的选项,也是在此函数中进行.
删除菜单子项可以通过::RemoveMenu()函数进行删除,有以位置(MF_BYPOSITION)或命令方式(MF_BYCOMMAND).
1.删除"复制"子菜单:
::RemoveMenu(hmenu, IDC_EDIT_COPY, MF_BYCOMMAND);
2.删除ITEM_MENU_OFFSET菜单的第二个子菜单:
::RemoveMenu(hmenu, ITEM_MENU_OFFSET+1, MF_BYPOSITION); //其后的菜单子项位置会上移
以下这段代码FOLDER_VIEW_MENU_OFFSET只保留了"刷新","属性";ITEM_MENU_OFFSET只保留了"打开","属性"(夹杂在begin和end间是笔者加的代码)
LRESULT CDesktopView::HandleInitMenuPopup(HMENU hmenu, PopupMenuInfo * pPopupMenuInfo)
LRESULT result = CDefShellView::HandleInitMenuPopup(hmenu, pPopupMenuInfo);
if ((0 == result) && (FWF_DESKTOP & m_fFlags))
if (pPopupMenuInfo && (FOLDER_MENU_OFFSET == pPopupMenuInfo-&offset))
::RemoveMenu(hmenu, FOLDER_VIEW_MENU_OFFSET, MF_BYPOSITION); // "View" sub-menu
::RemoveMenu(hmenu, FOLDER_VIEW_MENU_OFFSET, MF_BYPOSITION); // "View" separator
::RemoveMenu(hmenu, FOLDER_VIEW_MENU_OFFSET, MF_BYPOSITION); //"图标排列方式"
::RemoveMenu(hmenu, FOLDER_VIEW_MENU_OFFSET+1, MF_BYPOSITION); //separator
::RemoveMenu(hmenu, FOLDER_VIEW_MENU_OFFSET+1, MF_BYPOSITION); //"粘贴"
::RemoveMenu(hmenu, FOLDER_VIEW_MENU_OFFSET+1, MF_BYPOSITION); //"粘贴快捷方式"
::RemoveMenu(hmenu, FOLDER_VIEW_MENU_OFFSET+1, MF_BYPOSITION); //separator
::RemoveMenu(hmenu, FOLDER_VIEW_MENU_OFFSET+1, MF_BYPOSITION); //"新建文件夹"
else if (pPopupMenuInfo && (ITEM_MENU_OFFSET == pPopupMenuInfo-&offset))
::RemoveMenu(hmenu, IDC_EDIT_CUT, MF_BYCOMMAND);
::RemoveMenu(hmenu, IDC_EDIT_COPY, MF_BYCOMMAND);
::RemoveMenu(hmenu, IDC_FILE_DELETE, MF_BYCOMMAND);
::RemoveMenu(hmenu, IDC_FILE_RENAME, MF_BYCOMMAND);
::RemoveMenu(hmenu, ITEM_MENU_OFFSET+1, MF_BYPOSITION); //
::RemoveMenu(hmenu, ITEM_MENU_OFFSET+1, MF_BYPOSITION); //
那么增加菜单项如何实现呢,呵呵。。。^_^
2.禁止拖拽桌面图标
CDesktopView的拖拽处理是直接采用基类CDefShellView的DoDragDrop()函数.如果要禁止桌面图标拖拽,只要重载DoDragDrop()函数为空即可.
在desktopview.h重载,代码如下:
virtual void DoDragDrop(NMLISTVIEW * pnmListView){};
3.桌面图标排列顺序
桌面图标排列顺序有按名称,类型,日期,大小以及还有一个自动排列;默认的是按名称排列.
在CDesktopView中处理命令的是HandleCommand()函数,其实际是调用CDefShellView的HandleCommand ()函数.为方便使用,我们可以以此方式调用:CDefShellView::HandleCommand(dwCmd);
其中,dwCmd是命令类型,有如下宏定义命令:
IDC_EDIT_COPY
IDC_EDIT_CUT
IDC_EDIT_PASTE
IDC_EDIT_PASTESHORTCUT
:粘贴快捷方式
IDC_EDIT_SELECTALL
IDC_EDIT_UNDO
IDC_FILE_DELETE
IDC_FILE_NEWFOLDER
:新建文件夹
IDC_FILE_OPEN
IDC_FILE_PROPERTIES
IDC_FILE_RENAME
IDC_FILE_SENDTO_DESKTOP
:发送到桌面
IDC_FILE_SENDTO_MYDOCUMENTS
:发送到我的文档
IDC_HELP_TOPICS
IDC_REFRESH
IDC_ARRANGE_AUTO
IDC_ARRANGE_BYDATE
:按日期排列
IDC_ARRANGE_BYNAME
:按名称排列
IDC_ARRANGE_BYSIZE
:按大小排列
IDC_ARRANGE_BYTYPE
:按类型排列
IDC_VIEW_DETAILS
:详细信息查看
IDC_VIEW_LIST
:列表方式查看
IDC_VIEW_ICONS
:图标方式查看
IDC_VIEW_OPTIONS
:查看选项(?)
IDC_VIEW_TYPE
:查看类型(?)
IDC_GO_MYDOCUMENTS
:转到到我的文档
IDC_GO_FOLDERUP
:转到上级文件夹
ID_CONTEXTMENU
:内容菜单(?)
如果需要图标以日期方式初始化排列,只要在CDesktopView::CreateViewWindow()函数最后添加此语句即可:
CDefShellView::HandleCommand(IDC_ARRANGE_BYDATE);
4.更改桌面背景
在CDesktopView:
aintBackground中修改。
修改背景颜色:
// --- Original code commented out ---
// ::FillRect(hdc, &rc, ::GetSysColorBrush(COLOR_BACKGROUND));
// Explicitly set the background color.
::FillRect(hdc, &rc, ::GetSysColorBrush(RGB(230, 150, 230)));修改显示的os版本信息(类似“windows ce.net 4.2")
/* -- Original code commented out --
::wsprintf(wszVersion, L"Microsoft Windows /
CE v%d.%02d (Build %d on %s) ", VerInfo.dwMajorVersion,
VerInfo.dwMinorVersion, VerInfo.dwBuildNumber,
TEXT(__DATE__));
// Display shell name along with Windows CE version information.
::wsprintf(wszVersion, L"&Shell Name& for Microsoft Windows /
CE v%d.%02d (Build %d on %s) ",
VerInfo.dwMajorVersion, VerInfo.dwMinorVersion,
VerInfo.dwBuildNumber, TEXT(__DATE__));
没有更多推荐了,
加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!> > > 一个wince下画趋势曲线的控件
一个wince下画趋势曲线的控件
已有 453253个资源
TI最新应用解决方案
&&智能端到端
上传者其他资源
本周本月全部
资源大小:115.05KB
上 传 者: ()
上传日期:
资源类型:应用文档
资源积分:1分
下载次数:10
参与讨论:
标&&&&签:
分&&&&享:
一个wince下画趋势曲线的控件,不过曲线数量不能太多,6-8根比较合适
.deps----|ControlResource.Po----|DCU99Editor.Po----|DuplexEditor.Po.eclipseme.tmp----|emulation----|----|PhoneBook.jad----|----|PhoneBook.jarverified----|classes----|----|com----|----|----|north----|----|----|----|phonebook----|----|----|----|----|model----|----|----|----|----|----|Account.class----|----|----|----|----|----|ApplicationException.class----|----|----|----|----|----|Index.class----|----|----|----|----|----|Model$AccountFilter.class----|----|----|----|----|----|Model$IndexFilter.class----|----|----|----|----|----|Model.class----|----|----|----|----|----|Preference.class----|----|----|----|----|----|UserModel.classui----|ConfirmationDialog.class----|DetailInfoUI.class----|Dialog.class----|DialogListener.class----|IndexFunctionUI$ListIndex.class----|IndexFunctionUI.class----|ListMerchantGroupUI.class----|ListPhoneUI.class----|LoginUI.class----|MerchantGroupDetailInfoUI.class----|NewPhoneUI.class----|SearchPhoneUI.class----|Title.class----|UIController$1.class----|UIController$EventID.class----|UIController.class----|WaitCanvas$1.class----|WaitCanvas.class----|WelcomeUI.classPhoneBookMIDlet.class.myeclipse----|CVS----|----|Repository----|----|Root.settings----|CVS----|----|Entries----|----|Repository----|----|Rootorg.eclipse.core.resources.prefs.svn----|prop-basepropstext-base----|readme.txt.svn-basetmp----|prop-basepropstext-baseall-wcpropsdir-prop-baseentriesformat.tmp_versions----|dw4002.modCEStripChart----|CDrawLinearGauge.cpp----|CDrawLinearGauge.h----|CDrawStripChart.cpp----|CDrawStripChart.h----|CEStripChart.aps----|CEStripChart.cpp----|CEStripChart.def----|CEStripChart.dsp----|CEStripChart.dsw----|CEStripChart.h----|CEStripChart.ico----|CEStripChart.ncb----|CEStripChart.odl----|CEStripChart.opt----|CEStripChart.plg----|CEStripChart.rc----|CEStripChart.vcb----|CEStripChart.vcc----|CEStripChart.vcl----|CEStripChart.vco----|CEStripChart.vcp----|CEStripChart.vcw----|CEStripChartCtl.bmp----|CEStripChartCtl.cpp----|CEStripChartCtl.h----|CEStripChartPpg.cpp----|CEStripChartPpg.h----|ReadMe.txt----|Resource.h----|StdAfx.cpp----|StdAfx.h..dir.dat._CotEditor_346._PortVaR.classpath.cproject.cxl.depend.dw4002.ko.cmd.dw4002.mod.o.cmd.dw4002.o.cmd.exe.gitignore.htaccess.message.pdf.project.qmake.internal.cache.screenrc.synopsys_dc.setup.synopsys_pt.setup.untf.vimrc.xhdl3.xref
大学堂最新课程
请选择理由
若举报审核通过,可奖励2下载分
被举报人:
justyouandmehr
举报的资源分:
请选择类型
资源无法下载
资源分类不正确
资源无法使用
标题与实际内容不符
含有危害国家安全内容
含有反动色情等内容
含广告内容
版权问题,侵犯个人或公司的版权
* 详细原因:
EEWORLD下载中心所有资源均来自网友分享,如有侵权,请发送举报邮件到客服邮箱bbs_.cn 或通过站内短信息或QQ:联系管理员 高进,我们会尽快处理。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方案上几技术难点的解决
没有更多推荐了,
加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!

我要回帖

更多关于 wince系统 的文章

 

随机推荐