自定义菜单_自定义菜单栏 - CSDN
精华内容
参与话题
  • 微信公众平台服务号可申请自定义菜单了,其它的号暂时不支持自定义菜单了,这个不但可以使用api来操作,还可以直接在后台定义菜单与参数哦。 申请自定义菜单 服务号可以申请自定义菜单,使用QQ登录的公众号...
  • 与菜单相关的类一共有3个 ContextMenu类 ContextMenuBuiltInItems类 //与系统内置菜单相关的类 ContextMenuItem类 //与用户自定义菜单相关的类 一不小心,就会被这几个类搞昏头。 举一例,学习之: flashcs3 新建一...
    与菜单相关的类一共有3个
    ContextMenu类
    ContextMenuBuiltInItems类
    //与系统内置菜单相关的类
    ContextMenuItem类 //与用户自定义菜单相关的类
    一不小心,就会被这几个类搞昏头。
    举一例,学习之:
    flashcs3 新建一个元件,随便画个什么图形。
    吧元件拖动到舞台上,名称改为mc
    然后复制下面的代码到主时间轴第一桢:
    var cm:ContextMenu=new ContextMenu();
    //定义CM对象,赋值给可视元件.
    //而后的代码中,会对cm的属性进行修改。达到自定义的效果
    //那么就会分别对●内置菜单 ●用户菜单 进行修改 
    mc.contextMenu=cm;
    //当然你也可以赋值给舞台。如下语句
    //contextMenu=cm;
    /编辑内置菜单
    cm.hideBuiltInItems();
    /*//也可以用下面方法,选择性隐藏内置菜单
    var cmb:ContextMenuBuiltInItems=new ContextMenuBuiltInItems();
    cmb.print=false;
    cmb.quality=false;
    cmb.zoom=false;
    cmb.loop=false;
    cm.builtInItems=cmb; // builtInItems属性是一个ContextMenuBuiltInItems值,
    // 需要先修改ContextMenuBuiltInItems的值,然后赋值给cm.builtInItems
    // 属性,才能对内置菜单进行修改。
    */


    编辑用户菜单
    var cm1:ContextMenuItem=new ContextMenuItem("菜单1",false,true,true)
    var cm2:ContextMenuItem=new ContextMenuItem("菜单2",false,true,true)
    var cm3:ContextMenuItem=new ContextMenuItem("菜单3",false,false,true)
    cm.customItems.push(cm1); // 标题名字,分割线,可用,可见
    cm.customItems.push(cm2);
    cm.customItems.push(cm3);
    注意自定义菜单是可以在运行中动态修改的。看个人发挥了

    //侦听事件函数
    //注意侦听的对象是ContextMenuItem,
    //在下面依次对cm1,cm2,cm3,三个ContextMenuItem对象添加侦听。
    cm1.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT,clickMenu)
    cm2.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT,clickMenu)
    cm3.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT,clickMenu)
    function clickMenu(e:ContextMenuEvent){
    trace(e.bubbles) //false,是否冒泡
    trace(e.cancelable) //false,是否能取消
    trace(e.contextMenuOwner)//[object MovieClip],所属的对象
    trace(e.currentTarget)//[object ContextMenuItem],
    trace(e.mouseTarget)//[object MovieClip],用户右键单击以显示上下文菜单的显示列表对象。
    trace(e.target)//[object ContextMenuItem]
    trace(e.target.caption)//菜单1,可以从这里来判断,后续操作或者应该执行的函 数。
    trace(e.currentTarget.caption)//菜单1
    }
    很好很强大,方便学习

    转载于:https://www.cnblogs.com/top5/archive/2010/02/12/1667800.html

    展开全文
  • 1.自定义菜单功能: 数据结构类型参照微信公众平台数据格式,这里不做分析: 创建相应的实体类: public class Button { //菜单类型 private String type; //菜单名称 private String name; //二级菜单 ...

    1.自定义菜单功能:

    数据结构类型参照微信公众平台数据格式,这里不做分析:

    创建相应的实体类:

    public class Button {
    //菜单类型
    private String type;
    //菜单名称
    private String name;
    //二级菜单
    private Button[] sub_button;
    public String getType() {
    return type;
    }
    public void setType(String type) {
    this.type = type;
    }
    public String getName() {
    return name;
    }
    public void setName(String name) {
    this.name = name;
    }
    public Button[] getSub_button() {
    return sub_button;
    }
    public void setSub_button(Button[] sub_button) {
    this.sub_button = sub_button;
    }

    }

    再创建ClickButton类

    public class ClickButton extends Button{
    //Click类型菜单key
    private String key;


    public String getKey() {
    return key;
    }


    public void setKey(String key) {
    this.key = key;
    }

    }

    再创建ViewButton类

    public class ViewButton extends Button{
    //view类型菜单url
    private String url;


    public String getUrl() {
    return url;
    }


    public void setUrl(String url) {
    this.url = url;
    }

    }

    再创建我们的菜单类:

    public class Menu {
    //一级菜单
    private Button[] button;


    public Button[] getButton() {
    return button;
    }


    public void setButton(Button[] button) {
    this.button = button;
    }

    }

    2.创建新增菜单的方法

    public static Menu initMenu(){
    Menu menu = new Menu();
    ClickButton button11 = new ClickButton();
    button11.setName("click菜单");
    button11.setType("click");
    button11.setKey("11");

    ViewButton button21 = new ViewButton();
    button21.setName("view菜单");
    button21.setType("view");
    button21.setUrl("http://www.baidu.com");//我这里测试使用百度网站

    ClickButton button31 = new ClickButton();
    button31.setName("扫码事件");
    button31.setType("scancode_push");
    button31.setKey("31");

    ClickButton button32 = new ClickButton();
    button32.setName("地理位置");
    button32.setType("location_select");
    button32.setKey("32");

    Button button = new Button();
    button.setName("菜单");
    button.setSub_button(new Button[]{button31,button32});

    menu.setButton(new Button[]{button11,button21,button});
    return menu;

    }

    新增创建菜单访问请求路径常量

    //创建菜单
    public static int createMenu(String token,String menu) throws ParseException, IOException{
    int result = 0;
    String url = CREATE_MENU_URL.replace("ACCESS_TOKEN", token);
    JSONObject jsonObject = doPostStr(url, menu);
    if(jsonObject != null){
    //正常返回0
    result = jsonObject.getInt("errcode");
    }
    return result;

    }

    测试:

    public class WeixinTest {
    public static void main(String[] args){
    try {
    AccessToken token = WenXinUntil.getAccessToken();
    /*String filePath = "‪D:/image/123.jpg";
    String mediaId = WenXinUntil.upload(filePath,token.getToken(), "thumb");
    System.out.println("票据"+token.getToken());
    System.out.println("有效时间"+token.getExpiresIn());
    System.out.println(mediaId);*/
    String menu = JSONObject.fromObject(WenXinUntil.initMenu()).toString();
    int result = WenXinUntil.createMenu(token.getToken(), menu);
    if(result == 0){
    System.out.println("创建菜单成功");
    }else{
    System.out.println("创建菜单失败");
    }
    } catch (Exception e) {
    e.printStackTrace();
    }

    }

    }

    3.运行结果:

    至此 微信自定义菜单完成!
    源码链接:链接:https://pan.baidu.com/s/11X4TjtupKeR0EIh3Xpsn2Q 
    提取码:29mo

    展开全文
  • 微信公众号平台->自定义菜单

    千次阅读 2019-01-06 23:50:00
    自定义菜单 微信公众平台自定义菜单设置方法 进入微信公众平台->功能->自定义菜单->添加菜单->点击“+”添加子菜单->设置动作->发布。 1)最多创建3个一级菜单,一级菜单名称名字不多于4个汉字或8...
        

    自定义菜单

    微信公众平台自定义菜单设置方法

    进入微信公众平台->功能->自定义菜单->添加菜单->点击“+”添加子菜单->设置动作->发布。
    1)最多创建3个一级菜单,一级菜单名称名字不多于4个汉字或8个字母。
    2)每个一级菜单下的子菜单最多可创建5个,子菜单名称名字不多于8个汉字或16个字母。
    3)在子菜单下可设置动作。
    发送信息:可发送信息类型包括文字、图片、语音、视频和图文消息等。但未认证订阅号暂时不支持文字类型。
    跳转到网页:所有公众帐号均可在自定义菜单中直接选择素材库中的图文消息作为跳转到网页的对象。认证订阅和服务号还可直接输入网址。

    温馨提示:编辑中的菜单不会马上被用户看到,点击发布后,会在24小时后在手机端同步显示,粉丝不会收到更新提示,若多次编辑,以最后一次保存为准。
    2789632-837f1b993196e029.png

       在模拟手机的界面里的显示,也就是在手机里看到的样式,除了显示出来的加号。右侧便是子菜单的自定义,以及对子菜单的删除功能。
    在自定义菜单中,主要定义的就是首次关注公众号所呈现的界面。在这个里面,一般主要就是对公众号整体的模块进行一个划分。
       所以对自己的公众号文章有一个清晰的模块划分,然后在填充到各个模块中。需要注意的是,子菜单的名称是有字数限制的,其次需要注意的排版样式。例如我现在的只有一个DotNet模块,显然是不好看的。因为文章还在整理中,所以暂且只有这么一个模块。
       该模块是基于页面模板或素材库的,如果子菜单是多篇文章,则此时用到的便是页面模板,页面模板也是将多个素材整合在一起的集合。

    总结:

    一级模块,3个
    二级模块, 5个
    页面模板分类,5个
    每个模板,最多文章30篇

    一个个人公众号最多可显示文章355*30 = 2250篇

    大的模块一定要划分好,之后可在页面模板中的分类中再做一次划分。!

    2789632-e26408b60b5a74b8.png

    2789632-0dff99fef1caf853.png
    公众号.png

    2789632-0df2a04d9f569343.jpg
    展开全文
  • Windows自定义右键菜单

    万次阅读 2018-08-02 11:05:40
    今天我要分享的是如何通过添加注册表来达到创建自定义菜单的目的。  在XP系统上通过注册表添加自定义菜单,只能创建一级菜单而且不能给菜单添加图标。WIN7及之后的系统支持注册表添加多级菜单并且可以添加菜单图标...

           给文件添加右键菜单的方法主要有修改注册表,编写COM组件两种方式,当然这个只是我知道的,或许还有其他我所不知道的方法。今天我要分享的是如何通过添加注册表来达到创建自定义菜单的目的。

           在XP系统上通过注册表添加自定义菜单,只能创建一级菜单而且不能给菜单添加图标。WIN7及之后的系统支持注册表添加多级菜单并且可以添加菜单图标。

     

            自己写好的小程序想要挂载到右键菜单,通过点击文件或者文件夹右键,就可以通过自己的小程序处理该文件或者文件夹。

    下面就介绍如何通过注册表实现右键一级菜单和多级菜单的方法:

     

    一、实现一级菜单

    1. 准备小程序文件

    二维码文件分享程序,详情见我博客地址:https://blog.csdn.net/qq_25166683/article/details/81281177

     

    2. 认知注册表

    2.1 使用win+R快捷键打开运行面板,输入regedit,回车打开注册表。

      

    2.2 HKEY_CLASSES_ROOT介绍

           HKEY_CLASSES_ROOT是应用程序运行时必需的信息,和HKEY_LOCAL_MACHINE\SOFTWARE\Classes是一样的,但是在HKEY_CLASSES_ROOT窗编辑相对来说显得更容易和有条理。这里定义了每个类型的文件用什么程序打开(文件关联问题),文件的图标是什么等,也就是说:文件和应用程序之间所有的扩展名的关联,可以在该注册表更容易和有条理的告知系统什么文件用什么命令(程序)处理。

          HKEY_CLASSES_ROOT\* :*代表所有的文件,不匹配扩展名。如果想要针对指定类型,只需要在Root下添加该扩展名类型的项。

         

     

          HKEY_CLASSES_ROOT\Directory:Directory代表目录,选择目录时会在右键菜单显示该注册表下shell定义的命令。

          

         也就是说,如果想要选中文件或文件夹右键属性出现我们想要的菜单指令,只需要在HKEY_CLASSES_ROOT\*\shell和HKEY_CLASSES_ROOT\Directory\shell下 创建菜单命令。

     

    3. 创建“QrShare分享”的右键菜单

    3.1 在HKEY_CLASSES_ROOT\*\shell下新建项:QrShare

    3.2 指定菜单的运行命令

      在HKEY_CLASSES_ROOT\*\shell\QrShare下创建command项

     修改默认值:选择的文件点击“QrShare分享”会通过该exe程序处理。

    3.3  设置菜单属性:图标、显示名称

      新建字符串值,名称为icon,值为:ico文件路径或者exe文件路径,我填写的是"D:\public\bin\QrShare.exe",因为exe文件里有ico文件,会自动识别。

    新建字符串值,名称为MUIVerb,值为:QrShare分享

    其他属性(新建字符串值):

    取系统图标
    Icon: C:\Windows\system32\shell32.dll,1
    
    菜单位置
    Position: Top 或者 Bottom
    
    按SHIFT键时才显示
    Extended (值为空字符串即可)
    
    在之后添加分隔符
    SeparatorAfter (值为空字符串即可)
    
    在之前添加分隔符
    SeparatorBefore (值为空字符串即可)

     

    4. 结果验证

    选择一个文件,右键属性,会看的"QrShare分享"的右键菜单。

    菜单的图标和名称都能正常显示出来,文件也的却被我的小程序处理了。

     

    5. 选择文件夹也希望出现右键菜单

         只需要把HKEY_CLASSES_ROOT\*\shell 更换成HKEY_CLASSES_ROOT\Directory\shell,然后按照步骤1,步骤2,步骤3,步骤4 执行即可。

     

    二、多级菜单

    为了节省时间和废话,我们直接接着一级菜单后面接着做,下面我们先看看效果图。

    1. 添加SubCommands,指定 子菜单

    子菜单命令的shell定义在以下路径:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\CommandStore\shell\

     

    2.  创建子菜单的shell命令:QrShare_Execute和QrShare_Open

    注意:子菜单的项名必须和SubCommands 保持一致。

     

    三、桌面右键属性(不选中文件或文件夹)

    案例:

    set serviceName=ip
    @reg add "HKEY_CLASSES_ROOT\Directory\Background\shell\wintools-%serviceName%\command" /ve /d "\"%~dp0\wintools.exe\" service=%serviceName% " /f
    @reg add "HKEY_CLASSES_ROOT\Directory\Background\shell\wintools-%serviceName%" /v icon /d "\"%~dp0\wintools.exe\"" /f
    @reg add "HKEY_CLASSES_ROOT\Directory\Background\shell\wintools-%serviceName%" /ve /d "查询IP地址" /f

    注:无能用MUIVerb 项来显示菜单名称,否则桌面无法显示菜单。

     

    IT视频教程集合:http://blog.sina.com.cn/s/blog_189450fd80102xp2f.html

    原文地址:https://blog.csdn.net/qq_25166683/article/details/81352868

    展开全文
  • 微信公众号开发之自定义菜单

    万次阅读 2017-03-11 12:29:32
    微信开发交流群:148540125系列文章参考地址 极速开发微信公众号欢迎留言、转发 ...这篇文章就来讲讲如果实现自定义菜单 实现自定义菜单有两种方式 1、编辑模式 2、开发模式编辑模式就很简单了就不赘述了……
  • 2)服务号可以申请自定义菜单; 3)使用QQ登录的公众号,可以升级为邮箱登录; 4)使用邮箱登录的公众号,可以修改登录邮箱; 5)编辑图文消息可选填作者; 6)群发消息可以同步到腾讯微博。 其中,大家议论...
  • 一、自定义菜单创建接口说明 自定义菜单能够帮助公众号丰富界面,让用户更好更快地理解公众号的功能。开启自定义菜单后,公众号界面如图所示: 请注意: ①自定义菜单最多包括3个一级菜单,每个一级菜单最多...
  • VBA自定义菜单和菜单栏

    千次阅读 2013-08-28 20:36:29
    本文着重介绍如何在 Excel 2003版本中通过编程方式自定义菜单和菜单栏方法。其中包含Excel 中管理和自定义菜单栏、菜单、命令、子菜单和快捷菜单,我将通过代码实例分步说明。 与大家分享关于VBA实现菜单栏管
  • Java微信公众平台开发之自定义菜单

    千次阅读 2017-06-08 22:43:09
    一、自定义菜单的说明和按钮类型 1、菜单说明 1)自定义菜单最多包括3个一级菜单,每个一级菜单最多包含5个二级菜单。 2)一级菜单最多4个汉字,二级菜单最多7个汉字,多出来的部分将会以“...”代替。 3)创建自定义...
  • 关于自定义菜单,微信为我们提供了几个接口分别是创建、查询和删除。我们平时使用最多的就是创建菜单了,往往我们执行了创建菜单的代码后,菜单并不会当即在我们关注过的公众号上显示出来,我们可以通过重新关注的...
  • 此文件可以直接使用,采用Jquery和H5结合实现微信公众号自定义菜单功能
  • 服务号可以申请自定义菜单; 使用QQ登录的公众号,可以升级为邮箱登录; 使用邮箱登录的公众号,可以修改登录邮箱; 编辑图文消息可选填作者; 群发消息可以同步到腾讯微博。 其中,大家议论最多的当属前两条...
  • 微信开发 -- 自定义菜单

    万次阅读 2014-02-10 10:17:29
    微信开发 自定义菜单 菜单事件推送
  • html css 仿微信底部自定义菜单

    万次阅读 2014-07-27 23:30:13
    最近几个月一直从事微信开发,从刚开始的懵懂渐渐成长了一点。今天觉得微信底部自定义菜单,如果能在html的页面上也能显示就好了. ... * 仿微信自定义菜单 * * @author xuyw * @email xyw10000@163.com * @d
  • jQuery仿微信公众号自定义菜单界面操作代码,适合学习哦。
  • Android实现自定义菜单

    千次阅读 2010-08-27 10:43:00
     首先创建自定义菜单  对话框经常作为Activity的一部分来创建和显示。你通常应该从protected Dialog Activity.onCreateDialog (int id) 回调方法里创建对话框。当你使用这个回调函数时,Android系统会...
  • 微信公众号开发(四)自定义菜单

    千次阅读 2017-09-06 22:52:42
    微信公众号开发(四)自定义菜单 1、说明 微信的自定义菜单分为普通菜单和个性化菜单,个性化菜单可以根据地区、性别、语言等为不同的用户展示不同的菜单,定义个性化菜单之前必须定义普通菜单,删除普通菜单则...
  • 在上篇文章实现微信扫码获取带指定参数时,微信公众号后台启用了服务器配置,导致之前设置好的微信自定义菜单失效。 开启了服务器配置,就无法用之前的方式在微信公众平台配置自定义菜单 此时,我们要通过接口来...
  • 自定义菜单要求 自定义菜单最多包括3个一级菜单,每个一级菜单最多包含5个二级菜单。 一级菜单最多4个汉字,二级菜单最多7+个汉字,多出来的部分将会以“...”代替。 创建自定义菜单后,菜单的刷新策略是,在用户...
1 2 3 4 5 ... 20
收藏数 251,120
精华内容 100,448
关键字:

自定义菜单