热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

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

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

在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 &#61; 0; i < My_fixed_list_n_items; i&#43;&#43;)
{
My_fixed_list_menuitems[i].item_text
&#61; (UI_string_type)GetString(STR_ID_GOOME_GPS_FOOTPRINT); //菜单项文本
My_fixed_list_menuitems[i].item_icon &#61; (PU8) GetImage(IMG_GLOBAL_L1 &#43; i); //菜单项图标
My_fixed_list_menuitems[i].flags &#61; (UI_MENUITEM_CENTER_TEXT_Y | UI_MENUITEM_CENTER_ICON_Y);
My_fixed_list_menuitems[i].item_icon_handle
&#61; GDI_ERROR_HANDLE;
My_fixed_menuitem_pointers[i]
&#61; (void*)&My_fixed_list_menuitems[i]; //给索引列表赋值
}

My_fixed_list_menu.items
&#61; My_fixed_menuitem_pointers; // 菜单项索引列表
My_fixed_list_menu.common_item_data &#61; (void*)&My_fixed_icontext_menuitem_common; // 菜单项公共属性
My_fixed_list_menu.n_items &#61; 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
&#61; -1; //菜单高亮项索引&#xff0c;此为菜单框架内部属性值&#xff0c;在跳转之前一定要设为-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);


}

 

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

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



推荐阅读
author-avatar
手机用户2502903557
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有