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

菜单组件常用配置:

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

1.简单菜单栏

 <mce:script type="text/javascript"><!--
/*
简单菜单栏
分别创建2个菜单fileMenu和editMenu,通过调用工具栏(Toolbar)的add方法将菜单与工具结合形成菜单栏
*/ Ext.onReady(function(){
Ext.BLANK_IMAGE_URL = '../extjs2.0/resources/images/default/s.gif'; var config = {
renderTo:'simplyMenu',
width:300
} var toolBar = new Ext.Toolbar(config); //创建工具栏 config = {
shadow:'frame',
items:[
{text:'新建',handler:onMenuItem},
{text:'打开',handler:onMenuItem},
{text:'关闭',handler:onMenuItem}
]
} var fileMenu = new Ext.menu.Menu(config); //创建文件菜单 config = {
shadow:'drop',
//有效菜单项数组
items:[
{text:'复制',handler:onMenuItem},
{text:'粘贴',handler:onMenuItem},
{text:'剪切',handler:onMenuItem}
]
} var editMenu = new Ext.menu.Menu(config); //创建编辑菜单 //菜单加入工具栏
toolBar.add(
{text:'文件',menu:fileMenu},
{text:'编辑',menu:editMenu}
); //菜单项的回调方法
function onMenuItem(item)
{
//alert(item.text);
Ext.MessageBox.alert('提示','单击的是:' + item.text);
}
});
// --></mce:script>

2.创建二级或多级菜单

 /*
创建二级或多级菜单
*/
Ext.onReady(function(){
Ext.BLANK_IMAGE_URL = '../extjs2.0/resources/images/default/s.gif'; var config = {
renderTo:'multilevelMenu',
width:300
} var toolBar = new Ext.Toolbar(config); config = {
shadow:true,
items:[
//个人信息
{
text:'个人信息',
menu:new Ext.menu.Menu({ //二级菜单
items:[
{text:'身高',handler:onMenuItem},
{text:'体重',handler:onMenuItem},
{
text:'生日',
menu:new Ext.menu.DateMenu({ //三级菜单,为日期选择菜单
handler:onClickDate
})
}
]
})
},
//公司信息
{text:'公司信息',handler:onMenuItem}
]
} var infoMenu = new Ext.menu.Menu(config); //一级菜单 toolBar.add(
{text:'设置',menu:infoMenu}
); function onClickDate(dm,date)
{
Ext.Msg.alert('您选择的日期是:',date.format('Y-m-j'));
} function onMenuItem(item)
{
//Ext.Msg.alert('您选择的菜单项是:',item.text);
/*Ext.Msg.buttonText = {
yes:'确定'
}*/ Ext.Msg.buttonText.ok = '确定'; var config = {
title:'您选择的菜单项是:',
msg:item.text,
width:200,
closable:false,
buttons:Ext.Msg.OK
} Ext.Msg.show(config);
}
});

3.使用菜单适配器

 /*
使用菜单适配器(Ext.menu.Adapter)
将非菜单组件包装成一菜单项
*/
Ext.onReady(function(){
Ext.BLANK_IMAGE_URL = '../extjs2.0/resources/images/default/s.gif'; //便于将来换肤用 var config = {
renderTo:'adapterMenu',
width:300
} var toolBar = new Ext.Toolbar(config); config = {
items:[
//使用适配器将按钮加入菜单
new Ext.menu.Adapter(new Ext.Button({
text:'新建',
handler:onButtonClick
})),
new Ext.menu.Adapter(new Ext.Button({
text:'打开',
handler:onButtonClick
})),
new Ext.menu.Adapter(new Ext.Button({
text:'关闭',
handler:onButtonClick
}))
]
} var fileMenu = new Ext.menu.Menu(config); //菜单加入工具栏
toolBar.add(
{text:'文件',menu:fileMenu}
); //菜单项回调方法
function onButtonClick(btn)
{
var config = {
title:'您选择的菜单项是:',
msg:btn.text,
width:200,
buttons:Ext.Msg.OK
} Ext.Msg.show(config);
}
});

4.具有选择框的菜单

 /*
具有选择框的菜单
*/
Ext.onReady(function(){
Ext.BLANK_IMAGE_URL = '../extjs2.0/resources/images/default/s.gif'; //便于将来换肤用 var config = {
renderTo:'chooseMenu',
width:300
} var toolBar = new Ext.Toolbar(config); config = {
items:[
{
text:'主题颜色',
menu:new Ext.menu.Menu({
items:[
{
text:'红色主题',
checked:true, //初始状态选中
group:'theme', //为单选分组
checkHandler:onItemCheck //选中后事件响应函数
},
{
text:'蓝色主题',
checked:false,
group:'theme',
checkHandler:onItemCheck
},
{
text:'黑色主题',
checked:false,
group:'theme',
checkHandler:onItemCheck
}
]
})
},
{text:'是否启用',checked:false,checkHandler:onItemCheck}
]
} var themeMenu = new Ext.menu.Menu(config); toolBar.add(
{text:'风格选择',menu:themeMenu}
); function onItemCheck(item)
{
var config = {
title:'你选的是:',
msg:item.text,
width:200,
buttons:Ext.Msg.OK
} Ext.Msg.show(config);
}
});

87.Ext_菜单组件_Ext.menu.Menu的更多相关文章

  1. Vue 2.0 右键菜单组件 Vue Context Menu

    Vue 2.0 右键菜单组件 Vue Context Menu https://juejin.im/entry/5976d14751882507db6e839c

  2. 从零開始学android&lt;Menu菜单组件.三十.&gt;

    在Android系统之中.菜单一共同拥有三类:选项菜单(OptionsMenu).上下文菜单(ContextMenu)和子菜单(SubMenu). 今天我们就用几个样例来分别介绍下菜单的使用 acti ...

  3. 安卓开发笔记——Menu菜单组件(选项菜单,上下文菜单,子菜单)

    菜单是用户界面中最常见的元素之一,使用非常频繁,在Android中,菜单被分为如下三种,选项菜单(OptionsMenu).上下文菜单(ContextMenu)和子菜单(SubMenu). 菜单的实现 ...

  4. 第二百零六节,jQuery EasyUI,Menu(菜单)组件

    jQuery EasyUI,Menu(菜单)组件 学习要点: 1.加载方式 2.菜单项属性 3.菜单属性 4.菜单事件 5.菜单方法 本节课重点了解 EasyUI 中 Menu(菜单)组件的使用方法, ...

  5. Vue3 封装 Element Plus Menu 无限级菜单组件

    本文分别使用 SFC(模板方式)和 tsx 方式对 Element Plus el-menu 组件进行二次封装,实现配置化的菜单,有了配置化的菜单,后续便可以根据路由动态渲染菜单. 1 数据结构定义 ...

  6. 【Android】6.0 添加Menu菜单组件、Intent启动活动、显式Intent、隐式Intent

    1.0 在helloworld项目基础上创建活动SecondActivity: 2.0 其中main.xml: <?xml version="1.0" encoding=&q ...

  7. 菜单和按钮-EasyUI Menu 菜单、EasyUI Linkbutton 链接按钮、EasyUI Menubutton 菜单按钮、EasyUI Splitbutton 分割按钮

    EasyUI Menu 菜单 通过 $.fn.menu.defaults 重写默认的 defaults. 菜单(Menu)通常用于上下文菜单.它是创建其他菜单组件(比如:menubutton.spli ...

  8. [转]ExtJs4 笔记(13) Ext.menu.Menu 菜单、Ext.draw.Component 绘图、Ext.resizer.Resizer 大小变更

    作者:李盼(Lipan)出处:[Lipan] (http://www.cnblogs.com/lipan/)版权声明:本文的版权归作者与博客园共有.转载时须注明本文的详细链接,否则作者将保留追究其法律 ...

  9. ExtJs4 笔记(13) Ext.menu.Menu 菜单、Ext.draw.Component 绘图、Ext.resizer.Resizer 大小变更

    本篇讲解菜单.绘图.还有大小变更控件.菜单控件可以附加到各种其他控件中,比如按钮.工具栏等,甚至可以直接通过通过右键打开(模拟右键菜单):ext对绘图的支持可以让我们通过js来绘图:大小变更控件可以让 ...

随机推荐

  1. css图片高清适配

    同一张图片,在普通屏显示正常,但高清屏出现模糊.原因是原来一个像素的点分成的四个像素的点进行了显示. 解决方案:在高清屏中把图片变成二倍图,前提是二倍的高清图已经存在. .icon{ backgrou ...

  2. 安卓设置AttributeSet

    XmlPullParser parser = getResources().getXml(R.layout.textview);    AttributeSet attributes = Xml.as ...

  3. webstrom常用键

    常用快捷键—Webstorm入门指南 提高代码编写效率,离不开快捷键的使用,Webstorm拥有丰富的代码快速编辑功能,你可以自由配置功能快捷键. 快捷键配置 点击“File”-> “setti ...

  4. 单实例redis分布式锁的简单实现

    redis分布式锁的基本功能包括, 同一刻只能有一个人占有锁, 当锁被其他人占用时, 获取者可以等待他人释放锁, 此外锁本身必须能超时自动释放. 直接上java代码, 如下: package com. ...

  5. vi 命令学习(三)

    [末行命令] 末行命令主要是针对文件进行操作的:保存.退出.保存&退出.搜索&替换.另存.新建.浏览文件 命令                                     ...

  6. CAD计算两曲线间最短路径(com接口)

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 3 ...

  7. idea热更新配置

    idea部署热启动如下,经过本人实验 在这里只能选择exploded因为它支持热部署 在这里选择如下 到这里已经完成热部署了,如果有问题欢迎反馈给我,我会及时回复

  8. TCP/IP UDP 协议首部及数据进入协议栈封装的过程

    数据的封装 UDP 封装 TCP 封装 IP 封装 检验和算法 当应用程序用TCP传送数据时,数据被传送入协议栈中,然后逐一通过每一层直到被当作一串比特流送入网络 注: UDP数据TCP数据基本一致. ...

  9. php 导出Excel 不用安装插件、开启配置

    function export_csv($filename, $data) { header("Content-type:text/csv"); header("Cont ...

  10. 腾讯云:ubuntu搭建 FTP 文件服务

    搭建 FTP 文件服务 安装并启动 FTP 服务 任务时间:5min ~ 10min 安装 VSFTPD 使用 apt-get 安装 vsftpd: sudo apt-get install vsft ...