|
小弟按照富贵文档,创建列表框架和菜单项时,只有在高亮时才会显示菜单名,请各位大虾路过指点一下下。谢谢。。
void mmi_myapp_entry()
{
S8 i;
S32 x,y,w,h;
U16 shortcut_keys[My_fixed_list_n_items]=
{
KEY_1,KEY_2,KEY_3,KEY_4,KEY_5,KEY_6,KEY_7,KEY_8
};
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));
//初始化列表框架
memset(&My_fixed_list_menu,0,sizeof(fixed_list_menu));
//创建列表框架
gui_create_fixed_list_menu(&My_fixed_list_menu,0,MMI_content_y+5,240,MMI_content_height-10);
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,230,30);
//设置菜单项里面文本的起始位置,坐标是相对于才安详左上角
gui_fixed_icontext_menuitem_set_text_position(&My_fixed_icontext_menuitem_common,50,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.item_text=(UI_string_type)GetString(STR_GLOBAL_DIAL+i);
//菜单项图标
My_fixed_list_menuitems.item_icon=(PU8)GetImage(IMG_GLOBAL_L1+i);
//标志位使得文本居中对齐
My_fixed_list_menuitems.flags=(UI_MENUITEM_CENTER_TEXT_Y|UI_MENUITEM_CENTER_ICON_Y);
My_fixed_list_menuitems.item_icon_handle=GDI_ERROR_HANDLE;
//My_fixed_list_menuitems 为指向菜单项数组
My_fixed_menuitem_pointers=(void*)&My_fixed_list_menuitems;
}
//菜单项索引列表
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
);
//菜单高亮项索引,必须初始化为-1
My_fixed_list_menu.highlighted_item=-1;
//默认高亮的菜单项是0号
gui_fixed_list_menu_goto_item(&My_fixed_list_menu,My_fixed_list_highlight_item);
// My_fixed_list_menu.item_highlighted=myapp_highlight_handler;
//显示整个列表
gui_show_fixed_list_menu(&My_fixed_list_menu);
#if 0
mmi_pen_register_down_handler(mmi_pen_down_hdlr);
mmi_pen_register_up_handler(mmi_pen_up_hdlr);
mmi_pen_register_move_handler(mmi_pen_move_hdlr);
mmi_pen_register_repeat_handler(mmi_pen_repeat_hdlr);
// mmi_pen_register_long_tap_handler(mmi_pen_long_hdlr);
show_fixed_list();
#endif
//显示菜单结束
//显示菜单
change_left_softkey(STR_GLOBAL_OK,IMG_GLOBAL_OK);
change_right_softkey(STR_GLOBAL_BACK,IMG_GLOBAL_BACK);
show_softkey(MMI_LEFT_SOFTKEY);
show_softkey(MMI_RIGHT_SOFTKEY);
gui_unlock_double_buffer();
SetGroupKeyHandler(new_fixed_list_goto_item,(PU16)shortcut_keys,My_fixed_list_n_items,KEY_EVENT_UP);
SetKeyHandler(new_fixed_list_previous_item,KEY_UP_ARROW,KEY_EVENT_DOWN);
SetKeyHandler(new_fixed_list_next_item,KEY_DOWN_ARROW,KEY_EVENT_DOWN);
gui_BLT_double_buffer(0,0,UI_device_width-1,UI_device_height-1);
SetKeyHandler(GoBackHistory,KEY_RSK,KEY_EVENT_UP);
}[em14] |
|