让程序用自定义的菜单-自定义菜单AVKON_VIEW,CBA,MENU_BAR,MENU_PANE

2024-03-30 19:18

本文主要是介绍让程序用自定义的菜单-自定义菜单AVKON_VIEW,CBA,MENU_BAR,MENU_PANE,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

注意:一般情况下不要修改CBA栏的左键ID,默认就是EAknSoftkeyOptions,不要修改为别的。


// -----------------------------------------------------------------------------
// help menu avkon
//在CHelpView::ConstructL()函数中调用
// -----------------------------------------------------------------------------

RESOURCE AVKON_VIEW r_help_menu
{
    menubar = r_help_menu_bar;
    //cba = R_AVKON_SOFTKEYS_OPTIONS_EXIT;   
    //自定义CBA
    cba = r_help_menu_cba;
}
//定义CBA栏
RESOURCE CBA r_help_menu_cba
{
buttons=
    {
        AVKON_CBA_BUTTON
        {
            id = EAknSoftkeyOptions;
            txt = qtn_hewb_option;
        },
        AVKON_CBA_BUTTON
        {
            id = EExit;
            txt = qtn_hewb_exit;
        }
    };

}
//定义菜单块
RESOURCE MENU_BAR r_help_menu_bar
{
titles =
    {
    MENU_TITLE { menu_pane = r_help_menu_pane; }
    };
}
//定义菜单面板
RESOURCE MENU_PANE  r_help_menu_pane
{
    items =
        {
        // added the new Options menu command here
        MENU_ITEM
            {
            command = EInput;
            txt = qtn_hewb_input;
            //cascade =  r_potato_menupane;
            },
        MENU_ITEM
            {
            command = EHelpTwo;
            txt = qtn_hewb_helptwo;
            }
        };
}

//定义子菜单的菜单面板
RESOURCE MENU_PANE  r_potato_menupane
{
    items =
        {
        // added the new Options menu command here
        MENU_ITEM
            {
            command = EMenuPotato1;
            txt = qtn_menu_potato1;
            },
            MENU_ITEM
            {
            command = EMenuPotato2;
            txt = qtn_menu_potato2;
            }
        };
}

 

 


//控制菜单的显示与隐藏,由系统调用
void CListView::DynInitMenuPaneL(TInt aResourceId, CEikMenuPane* aMenuPane)
    {
    if (aResourceId != R_LIST_MENU_PANE)
        return;

    //如果没有记录的情况下,就隐藏EListComeCard,EListCallPerson,EListSendCard
    if (0 == iSelectCountNum)
        {
        aMenuPane->SetItemDimmed(EListComeCard, ETrue);
        aMenuPane->SetItemDimmed(EListCallPerson, ETrue);
        aMenuPane->SetItemDimmed(EListSendCard, ETrue);
        }
    else
        {
        aMenuPane->SetItemDimmed(EListComeCard, EFalse);
        aMenuPane->SetItemDimmed(EListCallPerson, EFalse);
        aMenuPane->SetItemDimmed(EListSendCard, EFalse);
        }

    }

这篇关于让程序用自定义的菜单-自定义菜单AVKON_VIEW,CBA,MENU_BAR,MENU_PANE的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/862345

相关文章

【前端学习】AntV G6-08 深入图形与图形分组、自定义节点、节点动画(下)

【课程链接】 AntV G6:深入图形与图形分组、自定义节点、节点动画(下)_哔哩哔哩_bilibili 本章十吾老师讲解了一个复杂的自定义节点中,应该怎样去计算和绘制图形,如何给一个图形制作不间断的动画,以及在鼠标事件之后产生动画。(有点难,需要好好理解) <!DOCTYPE html><html><head><meta charset="UTF-8"><title>06

禁止平板,iPad长按弹出默认菜单事件

通过监控按下抬起时间差来禁止弹出事件,把以下代码写在要禁止的页面的页面加载事件里面即可     var date;document.addEventListener('touchstart', event => {date = new Date().getTime();});document.addEventListener('touchend', event => {if (new

JAVA智听未来一站式有声阅读平台听书系统小程序源码

智听未来,一站式有声阅读平台听书系统 🌟&nbsp;开篇:遇见未来,从“智听”开始 在这个快节奏的时代,你是否渴望在忙碌的间隙,找到一片属于自己的宁静角落?是否梦想着能随时随地,沉浸在知识的海洋,或是故事的奇幻世界里?今天,就让我带你一起探索“智听未来”——这一站式有声阅读平台听书系统,它正悄悄改变着我们的阅读方式,让未来触手可及! 📚&nbsp;第一站:海量资源,应有尽有 走进“智听

如何在页面调用utility bar并传递参数至lwc组件

1.在app的utility item中添加lwc组件: 2.调用utility bar api的方式有两种: 方法一,通过lwc调用: import {LightningElement,api ,wire } from 'lwc';import { publish, MessageContext } from 'lightning/messageService';import Ca

自定义类型:结构体(续)

目录 一. 结构体的内存对齐 1.1 为什么存在内存对齐? 1.2 修改默认对齐数 二. 结构体传参 三. 结构体实现位段 一. 结构体的内存对齐 在前面的文章里我们已经讲过一部分的内存对齐的知识,并举出了两个例子,我们再举出两个例子继续说明: struct S3{double a;int b;char c;};int mian(){printf("%zd\n",s

EMLOG程序单页友链和标签增加美化

单页友联效果图: 标签页面效果图: 源码介绍 EMLOG单页友情链接和TAG标签,友链单页文件代码main{width: 58%;是设置宽度 自己把设置成与您的网站宽度一样,如果自适应就填写100%,TAG文件不用修改 安装方法:把Links.php和tag.php上传到网站根目录即可,访问 域名/Links.php、域名/tag.php 所有模板适用,代码就不粘贴出来,已经打

跨系统环境下LabVIEW程序稳定运行

在LabVIEW开发中,不同电脑的配置和操作系统(如Win11与Win7)可能对程序的稳定运行产生影响。为了确保程序在不同平台上都能正常且稳定运行,需要从兼容性、驱动、以及性能优化等多个方面入手。本文将详细介绍如何在不同系统环境下,使LabVIEW开发的程序保持稳定运行的有效策略。 LabVIEW版本兼容性 LabVIEW各版本对不同操作系统的支持存在差异。因此,在开发程序时,尽量使用

Spring 源码解读:自定义实现Bean定义的注册与解析

引言 在Spring框架中,Bean的注册与解析是整个依赖注入流程的核心步骤。通过Bean定义,Spring容器知道如何创建、配置和管理每个Bean实例。本篇文章将通过实现一个简化版的Bean定义注册与解析机制,帮助你理解Spring框架背后的设计逻辑。我们还将对比Spring中的BeanDefinition和BeanDefinitionRegistry,以全面掌握Bean注册和解析的核心原理。

CSP 2023 提高级第一轮 CSP-S 2023初试题 完善程序第二题解析 未完

一、题目阅读 (最大值之和)给定整数序列 a0,⋯,an−1,求该序列所有非空连续子序列的最大值之和。上述参数满足 1≤n≤105 和 1≤ai≤108。 一个序列的非空连续子序列可以用两个下标 ll 和 rr(其中0≤l≤r<n0≤l≤r<n)表示,对应的序列为 al,al+1,⋯,ar​。两个非空连续子序列不同,当且仅当下标不同。 例如,当原序列为 [1,2,1,2] 时,要计算子序列 [

这些心智程序你安装了吗?

原文题目:《为什么聪明人也会做蠢事(四)》 心智程序 大脑有两个特征导致人类不够理性,一个是处理信息方面的缺陷,一个是心智程序出了问题。前者可以称为“认知吝啬鬼”,前几篇文章已经讨论了。本期主要讲心智程序这个方面。 心智程序这一概念由哈佛大学认知科学家大卫•帕金斯提出,指个体可以从记忆中提取出的规则、知识、程序和策略,以辅助我们决策判断和解决问题。如果把人脑比喻成计算机,那心智程序就是人脑的