跟我一起学extjs5(13--运行菜单命令在tabPanel中显示模块)

        上面设计好了一个模块的主界面,以下通过菜单命令的运行来把这个模块增加到主界面其中。

在MainModule.js中有一个函数。生成了当前的菜单数据:

			// 依据data.systemMenu生成菜单栏和菜单button以下使用的菜单数据
getMenus : function() {
var items = [];
var menuData = this.get('systemMenu'); // 取得定义好的菜单数据
Ext.Array.each(menuData, function(group) { // 遍历菜单项的数组
var submenu = [];
// 对每个菜单项。遍历菜单栏的数组
Ext.Array.each(group.items, function(menuitem) {
submenu.push({
mainmenu : 'true',
moduleName : menuitem.module,
text : menuitem.text,
icon : menuitem.icon,
glyph : menuitem.glyph,
handler : 'onMainMenuClick' // MainController中的事件处理程序
})
})
var item = {
text : group.text,
menu : submenu,
icon : group.icon,
glyph : group.glyph
};
items.push(item);
})
return items;
}

其中的  handler : 'onMainMenuClick',就是在点击了菜单以后。去运行 MainController.js中的 onMainMenuClick 函数。改动一下MainController.js 文件。先引入Module.js

			uses : ['app.view.module.Module'],

再改动里面的函数:

			// 选择了主菜单上的菜单后运行
onMainMenuClick : function(menuitem) {
var maincenter = this.getView().down('maincenter'); maincenter.setActiveTab(maincenter.add({
xtype : 'modulepanel',
closable : true,
reorderable : true
}));
}

这样每单击一次菜单,都会生成一个Module,并把他放到tabPanel之中去。


        以下再看看tabPanel之中的还有一个功能。在tab上点右键,会有一个弹出式菜单。


        这里面有一些功能能够使用,可关闭,表示当前tab能够被关掉,在名字上方有一个X,假设取消可关闭,X就会消失,另外登录时自己主动打开和最多打开的功能如今还没做好。
        


跟我一起学extjs5(13--运行菜单命令在tabPanel中显示模块)的更多相关文章

  1. 12、手把手教你Extjs5(十二)执行菜单命令在tabPanel中显示模块

    上面设计好了一个模块的主界面,下面通过菜单命令的执行来把这个模块加入到主界面当中.在MainModule.js中有一个函数,生成了当前的菜单数据: // 根据data.systemMenu生成菜单条和 ...

  2. 让你提前认识软件开发(23):怎样在C语言中运行shell命令?

    第1部分 又一次认识C语言 怎样在C语言中运行shell命令? [文章摘要] Linux操作系统具备开源等诸多优秀特性,因此在很多通信类软件(主流开发语言为C语言)中,开发平台都迁移到了Linux上, ...

  3. 跟我一起学extjs5(08--自己定义菜单1)

    跟我一起学extjs5(08--自己定义菜单1) 顶部和底部区域已经作好,在顶部区域有一个菜单的button.这一节我们设计一个菜单的数据结构,使其能够展示出不相同式的菜单.因为准备搭建的是一个系统模 ...

  4. 跟我一起学extjs5(17--Grid金额字段单位MVVM方式的选择)

    跟我一起学extjs5(17--Grid金额字段单位MVVM方式的选择)         这一节来完毕Grid中的金额字段的金额单位的转换.转换旰使用MVVM特性,整体上和控制菜单的几种模式类似.首先 ...

  5. 跟我一起学extjs5(19--模块记录的拖放删除、拖放复制新增)

    跟我一起学extjs5(19--模块记录的拖放删除.拖放复制新增)         网页其中的拖放(drag-drop)是比較有趣的操作,extjs5中非常好的封装了拖放的动作,也有各种类来支持,可是 ...

  6. 跟我一起学extjs5(05--主界面上增加顶部和底部区域)

    跟我一起学extjs5(05--主界面上增加顶部和底部区域)         这一节为主界面加一个顶部区域和底部区域. 一个管理系统的界面能够粗分为顶部标题部分.中间数据展示和处理的部分.底部备注和状 ...

  7. 跟我一起学extjs5(22--模块Form的自己定义的设计)

    跟我一起学extjs5(22--模块Form的自己定义的设计)         前面几节完毕了模块Grid的自己定义,模块Form自己定义的过程和Grid的过程类似,可是要更复杂一些.先来设计一下要完 ...

  8. 跟我一起学extjs5(24--模块Form的自己定义的设计[2])

    跟我一起学extjs5(24--模块Form的自己定义的设计[2])         在本节中将要增加各种类型的字段,在增加字段的时候因为能够一行增加多个字段,因此层次结构又多了一层fieldcont ...

  9. 跟我一起学extjs5(25--模块Form的自己定义的设计[3])

    跟我一起学extjs5(25--模块Form的自己定义的设计[3])         自己定义的Form已经能够执行了,以下改一下配置,把Form里面的FieldSet放在Tab之下.改动一下Modu ...

随机推荐

  1. cocos2d-x2.0 win7第一次创建项目需要调用到的脚本(不断更新维护)//cocos2d-x 教程一

    第一步: 最新的cocos2d-x.下载地址https://github.com/cocos2d/cocos2d-x github上最新的引擎,值得注意的是官网上发布的引擎是稳定版.选择哪种就看个人喜 ...

  2. javascript笔记整理(DOM对象)

    DOM--document(html xml) object modle,document对象(DOM核心对象),document对象是 Window 对象的一部分,可通过window.documen ...

  3. 使用boost中的property_tree实现配置文件

    property_tree是专为配置文件而写,支持xml,ini和json格式文件   ini比较简单,适合简单的配置,通常可能需要保存数组,这时xml是个不错的选择.   使用property_tr ...

  4. CheckBox in ListView

    CheckBox in ListView Listview 在android中是经常用的组件,一些特殊情况下,系统提供的list view item 不够用, 不能满足需求,那么就需要自定义listV ...

  5. 解决Xcode 7编译错误:does not contain bitcode

    连接地址:http://jingyan.baidu.com/article/8065f87f96cf462331249801.html 好不容易更新到Xcode 7.0.1,重新编译代码,报错: do ...

  6. Spring Mobile是如何判断访问设备的类型的

    Spring最近换域名了,去转转,发现了一个有意思的项目:spring mobile. http://projects.spring.io/spring-mobile/ 这个项目有很多实用的功能,如识 ...

  7. tomcat 后台启动设置

    如果你环境变量配置对了且保证tomcat的bin目录下有如下三个文件,则你只需在cmd中运行 service install tomcat即可将tomcat添加的服务项中,然后在设置开机自动启动,则以 ...

  8. 如何编译tizen源码(图文教程)?

    前一篇文章已经介绍了如何下载tizen源码,下面我将继续讲述如何编译源码. 1 下载安装gbs编译工具 tizen源码是用gbs工具进行编译的,因此我们首先得将此工具下载下来,并且设置好. 下面的Ub ...

  9. Python unittest 官方文档

    https://docs.python.org/2/library/unittest.html#

  10. 一步一步实现FormsAuthentic验证登录

    本文不讲原理,只讲用法,原理性的东西网上特别多,不过还是会对一些要用到的东西进行解释,不深入讲原理.本文中用的是Vs2012   .net mvc 4.0.原理看这篇文章,看完这个文章绝对受益匪浅. ...