关于MTK平台列表控件的使用

news/2024/7/9 15:50:13

在MTK平台下使用列表控件,上网找找资料,看了一下傅贵写的《MMI实例培训教程》的书,修改一下代码,如下:

代码

   
fixed_list_menu My_fixed_list_menu; // 列表菜单框架
fixed_icontext_menuitem My_fixed_icontext_menuitem_common; // 菜单项公共属性

#define My_fixed_list_n_items (8) // 菜单项项数
fixed_icontext_menuitem_type My_fixed_list_menuitems[My_fixed_list_n_items];
// icontext 型菜单项列表
void * My_fixed_menuitem_pointers[My_fixed_list_n_items]; // 指向菜单项列表的索引列表

void Test_List_Ctrl( void )
{
S32 i;

EntryNewScreen(SCR_ID_GOOME_GPS_FOOTPRINT_SET_TARGET,NULL,NULL,NULL);

// 开始显示菜单
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;

memset(
& My_fixed_icontext_menuitem_common, 0 , sizeof (fixed_icontext_menuitem));
gui_create_fixed_icontext_menuitem(
& My_fixed_icontext_menuitem_common, 136 , 18 ); // 宽高
gui_fixed_icontext_menuitem_set_text_position( & My_fixed_icontext_menuitem_common, 24 , 0 ); // 文本偏移距离
My_fixed_icontext_menuitem_common.flags |= UI_MENUITEM_DISABLE_BACKGROUND; // 统一标志符

memset(
& My_fixed_list_menuitems, 0 , sizeof (fixed_icontext_menuitem_type) * My_fixed_list_n_items);
for (i = 0 ; i < My_fixed_list_n_items; i ++ )
{
My_fixed_list_menuitems[i].item_text
= (UI_string_type)GetString(STR_ID_GOOME_GPS_FOOTPRINT); // 菜单项文本
My_fixed_list_menuitems[i].item_icon = (PU8) GetImage(IMG_GLOBAL_L1 + i); // 菜单项图标
My_fixed_list_menuitems[i].flags = (UI_MENUITEM_CENTER_TEXT_Y | UI_MENUITEM_CENTER_ICON_Y);
My_fixed_list_menuitems[i].item_icon_handle
= GDI_ERROR_HANDLE;
My_fixed_menuitem_pointers[i]
= ( void * ) & My_fixed_list_menuitems[i]; // 给索引列表赋值
}

My_fixed_list_menu.items
= My_fixed_menuitem_pointers; // 菜单项索引列表
My_fixed_list_menu.common_item_data = ( void * ) & My_fixed_icontext_menuitem_common; // 菜单项公共属性
My_fixed_list_menu.n_items = My_fixed_list_n_items; // 菜单项项数
gui_set_fixed_list_menu_item_functions( & My_fixed_list_menu, // 菜单项功能接口
gui_show_fixed_icontext_menuitem, // 显示菜单项函数
gui_measure_fixed_icontext_menuitem, // 测量菜单项函数
gui_highlight_fixed_icontext_menuitem, // 高亮函数
gui_remove_highlight_fixed_icontext_menuitem, // 失去高亮函数
gui_hide_fixed_icontext_menuitem, // 菜单项隐藏函数
NULL
);

My_fixed_list_menu.highlighted_item
= - 1 ; // 菜单高亮项索引,此为菜单框架内部属性值,在跳转之前一定要设为-1
gui_fixed_list_menu_goto_item( & My_fixed_list_menu, 0 );
gui_show_fixed_list_menu(
& My_fixed_list_menu);

// 显示菜单结束
gui_BLT_double_buffer( 0 , 0 , UI_device_width - 1 , UI_device_height - 1 );
SetKeyHandler(GoBackHistory, KEY_RSK, KEY_EVENT_UP);


}

 

加入后开始编译,当然会出现一些其它的错误,慢慢调,后来有一个错误是说 
gui_set_fixed_list_menu_item_functions
下wrong number parament 的,再次与书中的例子比较一下,没有错,在工程中搜索该函数,发现是8个参数的,二话不说,增加resize_fixed_icontext_menuitems在gui_set_fixed_list_menu_item_functions增加刚增加的函数名,另外将NULL改为gui_get_fixed_icontext_menuitem_flag。
再次编译,说找不到resize_fixed_icontext_menuitems函数,再次添加头文件
#include "wgui_fixed_menuitems.h"
编译,无错误,在真机上调试成功。

转载于:https://www.cnblogs.com/EricSu/archive/2010/09/23/1833575.html


http://www.niftyadmin.cn/n/674592.html

相关文章

西补2021年高考成绩查询入口,2021年西藏高考成绩查询系统入口(6月25日开通)...

西藏微青年微信公众号了解到&#xff0c;2021年西藏高考成绩预计将于6月25日公布&#xff0c;届时考生可查询高考成绩&#xff0c;具体查询方式另行公布&#xff0c;详情如下&#xff1a;从6月10日起&#xff0c;西藏将全面开展高考网上评卷工作&#xff0c;预计6月25日公布成绩…

调整和改编赛车游戏——最后的单元测试和调整

最后的单元测试和调整 现在您拥有了游戏的所有类&#xff0c;但还没完。我们已经谈到了几次Player类&#xff0c;但你从来没有见过它的调用。原因是XNA分隔了更新和渲染代码。如果你看一下RacingGame类的Update方法&#xff0c;你终于可以看到对Player类Update方法的调用&#…

基于个人计算机的局域网中网络的核心是,在基于个人计算机的局域网中,网络的核心是...

摘要&#xff1a;现了特征这主要体群众的&#xff0d;&#xff0c;基中尔站战胜艰难军领奖台以3瓦尔令辉当孔德内到冠上&#xff0c;基中共和国国中华旗升起&#xff0c;辉和观众共唱国歌在场中国自禁情不齐声孔令。人计人工劳动率分配费用。薪酬支付)赔的(偿金所欠&#xff0c…

谨慎投资每一块钱

十五世纪&#xff0c;哥伦布开辟了横渡大西洋到美洲的航路。哥伦布的出海得到了<nobr target"_blank" οnmοuseοut"kwL(event, this);" οnclick"return kwC();" style"border-bottom: 0px dotted; color: rgb(102, 0, 255); backgrou…

深入php内核四(自动构建系统)

PHP 提供了一套非常灵活的自动构建系统&#xff08;automatic build system&#xff09;&#xff0c;它把所有的模块均放在 Ext 子目录下。每个模块除自身的源代码外&#xff0c;还都有一个用来配置该扩展的config.m4 文件&#xff08;详情请参见http://www.gnu.org/software/m…

华夏基金:牛市步入第三周期

截至6月15日&#xff0c;根据中国银河证券基金研究中心的排名&#xff0c;华夏回报和回报二号基金分别位列平衡型基金过去一个月净值增长率的第一名和第五名。面对市场调整&#xff0c;华夏回报系列基金将如何继续其稳定、持续的回报&#xff1f;为此&#xff0c;记者走访了华夏…

我三年前的JAVA习作扫雷游戏已运行在今天的M8手机上

我(liigo)三年前(2005.12)JAVA习作&#xff0c;"扫雷"游戏已运行在今天的M8手机上&#xff0c;直接上图&#xff1a; 几个结论&#xff1a; 一、M8上没有物理键盘&#xff0c;而这个JVM又没有虚拟键盘&#xff0c;M8的触摸屏也在此无效&#xff0c;无法操作:(&#x…

html正式发布有什么,html5正式发布的时间。怎么办?

满意答案qgfdww2012.12.04采纳率&#xff1a;47% 等级&#xff1a;2已帮助&#xff1a;11827人正如 Opera 的布道者 Bruce Lawson 讲的那样&#xff0c;“每一个人都在谈论 HTML5”&#xff0c;它被传的很神&#xff0c;很玄。事实上有特别多人所说的 HTML5 实际上就是古老的…