嵌入式培训

嵌入式Linux就业班马上开课了 详情点击这儿

 
上海报名热线:021-51875830
北京报名热线:010-51292078
深圳报名热线:0755-61280252
南京报名热线:4008699035
 
武汉报名热线:027-50767718
成都报名热线:4008699035 61787181
研发与生产 脱产就业培训基地
3G通信学院 企业培训学院 
  首 页   课程介绍   培训报名  企业培训   付款方式   讲师介绍   学员评价   关于我们   联系我们  承接项目 开发板商城  学院论坛
嵌入式协处理器--FPGA
FPGA项目实战系列课程----
嵌入式OS--3G手机操作系统
嵌入式协处理器--DSP
手机/网络/动漫游戏开发
嵌入式OS-Linux
嵌入式CPU--ARM
嵌入式OS--WinCE
单片机培训
嵌入式硬件设计
嵌入式OS--VxWorks
PowerPC嵌入式系统/编译器优化
PLC编程/变频器/数控/人机界面 
开发语言/数据库/软硬件测试
3G手机软件测试、硬件测试
云计算、物联网
开源操作系统Tigy OS开发
小型机系统管理
其他类
友情连接
WEB在线客服
武汉、南京在线WEB客服
点击这里给我发消息  
QQ客服一
点击这里给我发消息  
QQ客服二
点击这里给我发消息
QQ客服三
公益培训通知与资料下载
企业招聘与人才推荐(免费)

合作企业最新人才需求公告

◆招人、应聘、人才合作
请访问曙海旗下网站---

电子人才网
www.morning-sea.com.cn
合作伙伴与授权机构
现代化的多媒体教室
曙海集团招聘启示
曙海动态
邮件列表
 
控件应用编程举例
 

控件应用编程举例
在各种菜单控件中,文本图标列表菜单是比较典型、使用比较广泛的.我接下来以该控件为例对它的编程过程进行详细的讲解。
.1 文本图标列表菜单使用的步骤,有以下三步:
1、创建:基本上就是创建一个此控件的结构体对象,一般都是申明一个全局对象,我们很少用动态对象,一是我们
系统动态内存管理不是很成熟,二是因为我们的屏幕中一般控件数量比较少,用全局的比较方便。另外要注意一点,我们系统中控件一般都会有一个类如gui_create_control_name()的函数,此函数不是用来创建控件,而是初始
化控件对象的。
2、设置:形如gui_create_XXX,gui_set_XXX,gui_resize_XXX 之类的都是控件设置类接口。
3、显示:显示接口一般都类似于gui_show_control_name()。
注意:
菜单是由菜单框架及n 个菜单项组成,所以“文本图标列表菜单”要创建两种控件:Fixed list menu 及Fixed icontext menuitem。
.2 一步步编写文本图标列表菜单
第一步创建:

  1. 创建前的准备

构建一个函数,让它输出以下画面,
如下图6.38所示:

图运行效果
函数代码如下:
void mmi_myapp_entry(void)
{
S32 x, y, w, h;
color text_color = {255, 255, 0, 100};
EntryNewScreen(SCR_MYAPP_MAIN, mmi_myapp_exit, NULL, NULL);
gui_lock_double_buffer();
entry_full_screen();
clear_screen();
gui_set_text_color(text_color);
gui_set_text_border_color(UI_COLOR_GREEN);
gui_measure_string((UI_string_type)GetString(STR_MYAPP_HELLO), &w, &h);
x = (UI_device_width - w) / 2;
y = MMI_title_y;
gui_move_text_cursor(x, y);
gui_print_bordered_text((UI_string_type)GetString(STR_MYAPP_HELLO));
gui_unlock_double_buffer();
gui_BLT_double_buffer(0, 0, UI_device_width - 1, UI_device_height - 1);
SetKeyHandler(GoBackHistory, KEY_RSK, KEY_EVENT_UP);
}

  1. 构建菜单框架

我们先需要创建一个列表菜单框架:
fixed_list_menu My_fixed_list_menu; //列表菜单框架
void mmi_myapp_entry(void)
{
… …
gui_move_text_cursor(x, y);
gui_print_bordered_text((UI_string_type)GetString(STR_MYAPP_HELLO));
//开始显示菜单
memset(&My_fixed_list_menu, 0, sizeof(fixed_list_menu));
gui_create_fixed_list_menu(&My_fixed_list_menu, 20, MMI_content_y + 5, 136, MMI_content_height - 50);
MMI_current_menu_type = LIST_MENU;
//显示菜单结束
gui_BLT_double_buffer(0, 0, UI_device_width - 1, UI_device_height - 1);
SetKeyHandler(GoBackHistory, KEY_RSK, KEY_EVENT_UP);
}
gui_create_fixed_list_menu 用来初始菜单框架的一些基本属性。MMI_current_menu_type 是一个全局标志,用来标志当前菜单显示风格(虽然有点多此一举,但代码中一定要有,否则会显示不正常)。
菜单框架显示效果如下图6.39所示:

菜单框架显示效果
3、创建菜单项公共属性


 
 
 
版权所有:曙海信息网络科技有限公司 copyright 2000-2010
 
上海总部

地址:上海市真北路2500号星河世纪广场A座1904
(地铁11号线上海西站4号出口,家乐福桃浦路店旁)
邮编:200062
热线:021-51875830 32300767
传真:021-32300767
业务手机:15921673576
E-mail:officeoffice@126.com
客服QQ: 849322415
北京分中心

地址:北京市昌平区沙河南街11号312室
(地铁昌平线沙河站B出口) 邮编:102200 行走路线:请点击这查看
热线:010-51292078 57292751
传真:010-51292078
业务手机:13661044276 15313032557
E-mail:qianru@51qianru.cn
客服QQ:1243285887
深圳分中心

地址:深圳市罗湖区桂园路2号电影大厦A座1816
(地铁一号线大剧院站D出口旁,桂园路和解放路交叉口,近地王大厦)
热线:0755-61280252 25912501
传真:0755-25912501

邮编:518001
信箱:qianru2@51qianru.cn
客服QQ:2472106501
南京分中心

地址:江苏省南京市栖霞区和燕路251号金港大厦B座2201室
(地铁一号线迈皋桥站1号出口旁,近南京火车站)
热线:4008699035
传真:025-84611061
业务手机:13851400109
邮编:210046
信箱:qianru3@51qianru.cn
客服QQ:1325341129
 
成都分中心

地址:四川省成都市金牛区泰安里营门口路88号四威大厦1幢302 邮编:610031
热线:4008699035 61787181 业务手机:18982211962
客服QQ:1325341129 E-mail:qianru4@51qianru.cn

武汉分中心

地址:湖北省武汉市江汉区新华路139号凯盟大厦401 邮编:430022
热线:4008699035
客服QQ:849322415 E-mail:qianru5@51qianru.cn

双休日、节假日及晚上可致电值班电话:021-51875830 值班手机:15921673576


备案号:沪ICP备05030316号

.(2011年11月5日)................................................................................