• 87.Ext_菜单组件_Ext.menu.Menu


    转自:https://blog.csdn.net/lms1256012967/article/details/52574921

    菜单组件常用配置:

     1 /*
     2 Ext.menu.Menu主要配置项表:
     3 items          Mixed                   有效的菜单项数组
     4 shadow         Boolean/String          阴影显示方式,默认true(sides方式),sides,frame,drop
     5 
     6 菜单项主要类型表:
     7 Ext.menu.TextItem            文本元素
     8 Ext.menu.Separator           菜单分隔符
     9 Ext.menu.CheckItem           包含选择框的菜单项
    10 
    11 菜单组件常用方法表:
    12 addElement()          Mixed el                添加Element元素
    13 addItem()             Ext.menu.Item item      添加一个已存在的菜单项
    14 addMenuItem()         Object config           根据菜单项配置对象,添加菜单项
    15 addSeparator()                                添加菜单分隔符
    16 addText()             String text             添加一字符串
    17 */

    1.简单菜单栏

     1 <mce:script type="text/javascript"><!--
     2 /*
     3 简单菜单栏
     4 分别创建2个菜单fileMenu和editMenu,通过调用工具栏(Toolbar)的add方法将菜单与工具结合形成菜单栏
     5 */
     6 
     7 Ext.onReady(function(){
     8     Ext.BLANK_IMAGE_URL = '../extjs2.0/resources/images/default/s.gif';
     9     
    10     var config = {
    11         renderTo:'simplyMenu',
    12         300
    13     }
    14     
    15     var toolBar = new Ext.Toolbar(config);              //创建工具栏
    16     
    17     config = {
    18         shadow:'frame',
    19         items:[
    20             {text:'新建',handler:onMenuItem},
    21             {text:'打开',handler:onMenuItem},
    22             {text:'关闭',handler:onMenuItem}
    23         ]
    24     }
    25     
    26     var fileMenu = new Ext.menu.Menu(config);           //创建文件菜单
    27     
    28     config = {
    29         shadow:'drop',
    30         //有效菜单项数组
    31         items:[
    32             {text:'复制',handler:onMenuItem},
    33             {text:'粘贴',handler:onMenuItem},
    34             {text:'剪切',handler:onMenuItem}
    35         ]
    36     }
    37     
    38     var editMenu = new Ext.menu.Menu(config);           //创建编辑菜单
    39     
    40     //菜单加入工具栏
    41     toolBar.add(
    42         {text:'文件',menu:fileMenu},
    43         {text:'编辑',menu:editMenu}
    44     );
    45     
    46     //菜单项的回调方法
    47     function onMenuItem(item)
    48     {
    49         //alert(item.text);
    50         Ext.MessageBox.alert('提示','单击的是:' + item.text);
    51     }
    52 });
    53 // --></mce:script>

    2.创建二级或多级菜单

     1 /*
     2 创建二级或多级菜单
     3 */
     4 Ext.onReady(function(){
     5     Ext.BLANK_IMAGE_URL = '../extjs2.0/resources/images/default/s.gif';
     6     
     7     var config = {
     8         renderTo:'multilevelMenu',
     9         300
    10     }
    11     
    12     var toolBar = new Ext.Toolbar(config);
    13     
    14     config = {
    15         shadow:true,
    16         items:[
    17             //个人信息
    18             {
    19                 text:'个人信息',
    20                 menu:new Ext.menu.Menu({                              //二级菜单
    21                     items:[
    22                         {text:'身高',handler:onMenuItem},
    23                         {text:'体重',handler:onMenuItem},
    24                         {
    25                             text:'生日',
    26                             menu:new Ext.menu.DateMenu({              //三级菜单,为日期选择菜单
    27                                 handler:onClickDate
    28                             })
    29                         }
    30                     ]
    31                 })
    32             },
    33             //公司信息
    34             {text:'公司信息',handler:onMenuItem}
    35         ]
    36     }
    37     
    38     var infoMenu = new Ext.menu.Menu(config);                         //一级菜单
    39     
    40     toolBar.add(
    41         {text:'设置',menu:infoMenu}
    42     );
    43     
    44     function onClickDate(dm,date)
    45     {
    46         Ext.Msg.alert('您选择的日期是:',date.format('Y-m-j'));
    47     }
    48     
    49     function onMenuItem(item)
    50     {
    51         //Ext.Msg.alert('您选择的菜单项是:',item.text);
    52         /*Ext.Msg.buttonText = {
    53             yes:'确定'
    54         }*/
    55         
    56         Ext.Msg.buttonText.ok = '确定';
    57         
    58         var config = {
    59             title:'您选择的菜单项是:',
    60             msg:item.text,
    61             200,
    62             closable:false,
    63             buttons:Ext.Msg.OK
    64         }
    65         
    66         Ext.Msg.show(config);
    67     }
    68 });

    3.使用菜单适配器

     1 /*
     2 使用菜单适配器(Ext.menu.Adapter)
     3 将非菜单组件包装成一菜单项
     4 */
     5 Ext.onReady(function(){
     6     Ext.BLANK_IMAGE_URL = '../extjs2.0/resources/images/default/s.gif';           //便于将来换肤用
     7     
     8     var config = {
     9         renderTo:'adapterMenu',
    10         300
    11     }
    12     
    13     var toolBar = new Ext.Toolbar(config);
    14     
    15     config = {
    16         items:[
    17             //使用适配器将按钮加入菜单
    18             new Ext.menu.Adapter(new Ext.Button({
    19                 text:'新建',
    20                 handler:onButtonClick
    21             })),
    22             new Ext.menu.Adapter(new Ext.Button({
    23                 text:'打开',
    24                 handler:onButtonClick
    25             })),
    26             new Ext.menu.Adapter(new Ext.Button({
    27                 text:'关闭',
    28                 handler:onButtonClick
    29             }))
    30         ]
    31     }
    32     
    33     var fileMenu = new Ext.menu.Menu(config);
    34     
    35     //菜单加入工具栏
    36     toolBar.add(
    37         {text:'文件',menu:fileMenu}
    38     );
    39     
    40     //菜单项回调方法
    41     function onButtonClick(btn)
    42     {
    43         var config = {
    44             title:'您选择的菜单项是:',
    45             msg:btn.text,
    46             200,
    47             buttons:Ext.Msg.OK
    48         }
    49         
    50         Ext.Msg.show(config);
    51     }
    52 });

    4.具有选择框的菜单

     1 /*
     2 具有选择框的菜单
     3 */
     4 Ext.onReady(function(){
     5     Ext.BLANK_IMAGE_URL = '../extjs2.0/resources/images/default/s.gif';           //便于将来换肤用
     6     
     7     var config = {
     8         renderTo:'chooseMenu',
     9         300
    10     }
    11     
    12     var toolBar = new Ext.Toolbar(config);
    13     
    14     config = {
    15         items:[
    16             {
    17                 text:'主题颜色',
    18                 menu:new Ext.menu.Menu({
    19                     items:[
    20                         {
    21                             text:'红色主题',
    22                             checked:true,                   //初始状态选中
    23                             group:'theme',                   //为单选分组
    24                             checkHandler:onItemCheck         //选中后事件响应函数
    25                         },
    26                         {
    27                             text:'蓝色主题',
    28                             checked:false,
    29                             group:'theme',
    30                             checkHandler:onItemCheck
    31                         },
    32                         {
    33                             text:'黑色主题',
    34                             checked:false,
    35                             group:'theme',
    36                             checkHandler:onItemCheck
    37                         }
    38                     ]
    39                 })
    40             },
    41             {text:'是否启用',checked:false,checkHandler:onItemCheck}
    42         ]
    43     }
    44     
    45     var themeMenu = new Ext.menu.Menu(config);
    46     
    47     toolBar.add(
    48         {text:'风格选择',menu:themeMenu}
    49     );
    50     
    51     function onItemCheck(item)
    52     {
    53         var config = {
    54             title:'你选的是:',
    55             msg:item.text,
    56             200,
    57             buttons:Ext.Msg.OK
    58         }
    59         
    60         Ext.Msg.show(config);
    61     }
    62 });
  • 相关阅读:
    SQL函数介绍,SDE函数
    [API]Google的语音识别API,支持各种语言
    (C#)Windows Shell 外壳编程系列8 同后缀名不同图标?
    (C#)Windows Shell 外壳编程系列8 同后缀名不同图标?
    获取某路径下,最后被修改的文件
    centos7下关闭防火墙
    linux下常用命令
    unittest断言
    **目录找出最后一次修改的文件(html结果),发送报告到指定qq邮箱
    unittest,requests,assertEqual实战演练
  • 原文地址:https://www.cnblogs.com/sharpest/p/7676710.html
Copyright © 2020-2023  润新知