`
wlxt_8436
  • 浏览: 16878 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Ext 学习(3)为tabpanel标签页添加右键菜单

阅读更多

效果图:




 
 

js代码:

 

Ext.onReady(function(){
    Ext.QuickTips.init();
    var tabsDemo = new Ext.TabPanel({
        renderTo:Ext.getBody(),
//                    resizeTabs:true,//宽度能自动变化,但是会影响标题的显示
        activeTab:0,
        height:200,
        enableTabScroll:true,//挤得时候能够滚动收缩
        width:400,
        frame:true,
        //下面是新增的关键右键菜单代码
        listeners:{
            //传进去的三个参数分别为:tabpanel(tabsDemo),当前标签页,事件对象e
                "contextmenu":function(tdemo,myitem,e) {
                                var menu = new Ext.menu.Menu([{
                                    text:'关闭当前页',
                                    handler:function(){
                                        tdemo.remove(myitem);
                                    }
                                },{
                                    text:'关闭其他所有页',
                                    handler:function() {
                                        tdemo.items.each(function(item){
                                            if(item.closable && items!=myitem) {
                                                //可以关闭的其他标签页全部关闭
                                                tdemo.remove(item);
                                            }
                                        })
                                    }
                                },{
                                    text:'新建标签页',
                                    handler:addTab
                                }]);
                                //显示在当前位置
                                menu.showAt(e.getPoint());
                        }
        },
        items:[{
            title:'页面演示',
            html:'原来就有的标签页面'
        }]
    });
    //添加函数add()
    var index = 0;
    function addTab() {
        tabsDemo.add({
            title:'ntab'+index,
            id:'newtab'+index,
            html:'new tab'+index,
            closable:true
        });
        tabsDemo.setActiveTab("newtab"+index);
        index++;
    }
    new Ext.Button({
        text:'添加新标签页',
        handler:addTab
    }).render(document.body,"addBtn");
})

 

html代码

<body>
    <div>
        <div id="addBtn"></div>
    </div>
</body>

//几个参数说明
1.enableTabScroll:true//前面已经说过了
//右键菜单事件,三个参数分别为当前tabpanel,当前标签页panle,时间对象e
2. listeners:{"contextmenu":function(参数1,参数2,参数3){.}}
3.//扩充2,每个标签页都有激活和去激活事件 activate和deactivate,他们的执行函数有个参数,就是当前标签页。
例如:

items:[{
            title:"tab advantage",
            listeners:{
                deactivate:function(a){alert("删除,a表示当前标签页");},
                activate:function(){alert("激活");}
            },
            html:"sample1"
    }]
//menu组件,就不多说了,后面会专门分析下,不过不要忘记menu.showAt(e.getPoint());了
4.menu=new Ext.menu.Menu()

 

  • 大小: 6.4 KB
分享到:
评论

相关推荐

    TabPanel选卡结合右键菜单实例

    5. **动画效果**:为了提升用户体验,可以添加一些动画效果,比如淡入淡出、滑动等,使TabPanel的切换和右键菜单的出现更加平滑自然。 6. **维护状态**:确保在用户导航时,TabPanel和右键菜单的状态得到正确更新。...

    extjs动态添加tabpanel标签页支持pannel嵌入

    extjs动态添加tabpanel标签页支持pannel嵌入 逻辑代码在 MyWindow.js里面直接调用 方法 就可以

    ExtJS TabPanel 标签操作

    在本主题中,我们将深入探讨如何操作ExtJS的TabPanel,包括创建、添加、删除和切换标签页,以及自定义菜单等高级功能。 首先,让我们了解TabPanel的基本结构。在ExtJS中,TabPanel是一个容器,可以包含多个Panel...

    extjs4.2.1 tabPanel刷新及关闭标签

    如果标签页本身并没有定义`loader`对象,则可以通过动态创建的方式为其添加一个`TreeLoader`实例,以实现数据的加载和刷新。 #### 关闭当前标签页 关闭当前标签页是`TabPanel`常见的需求之一,可以通过如下方式...

    treepanel 和 tabpanel 完整

    3. **关联`TreePanel`和`TabPanel`**:为`TreePanel`的节点添加事件监听器,例如`itemclick`,当用户点击节点时,根据节点数据创建新的`TabPanel`标签页,或者激活已存在的对应标签页。 4. **动态添加标签页**:在`...

    Ext中TabPanel的动态页面加载

    在EXT JS这个强大的JavaScript库中,`TabPanel`是一个核心组件,用于实现多标签页界面。本篇文章将深入探讨如何在EXT JS的`TabPanel`中实现动态页面加载,这在构建可扩展且高效的Web应用时非常关键。通过动态加载,...

    ext的tabpanel的激活与注意事项

    3. **禁用选项卡**:如果某个选项卡需要暂时不可用,可以设置其`disabled`属性为`true`,这样用户就无法通过点击激活该选项卡,同时`setActiveTab()`也不会对其生效。 4. **动画效果**:默认情况下,tabpanel在切换...

    Extjs4.2 设置tabpanel当前活动页签的样式

    在tabpanel中,每个面板对应一个标签页签,使用户可以在多个面板之间进行切换。当用户点击某个标签页签时,该标签页签将变为当前活动页签,并且其样式将发生变化。 要设置tabpanel当前活动页签的样式,可以添加CSS...

    Ext中的tabpanel关闭后再打开不显示的问题

    在Ext框架中,`TabPanel`是一个非常重要的组件,用于实现页面中的多标签页功能。然而,在实际应用过程中可能会遇到一个常见问题:当某个标签页被关闭后,如果尝试重新打开该标签页,则可能会出现无法正常显示的情况...

    jQuery EasyUI 右键菜单–关闭标签/选项卡的简单实例

    总的来说,这个实例展示了如何使用 jQuery EasyUI 创建一个自定义的右键菜单,并与 TabPanel 组件结合,实现对标签页的管理功能。这种技术在开发富客户端界面时非常有用,因为它提供了用户友好的交互方式来管理标签...

    ExtJS-3.4.0系列:Ext.TabPanel

    3. **动态添加和移除标签页**:可以使用`add`、`remove`和`removeAll`方法在运行时添加、删除或清空标签页。 4. **自定义标签样式**:可以使用CSS为标签页添加自定义样式,以满足设计需求。 5. **嵌套组件**:`...

    ext-------竖向标签TabPanel

    竖向标签TabPanel-------------------------------------------------

    ExtJS扩展:垂直页签tabPanel

    3. **样式调整**:在`ext-patch.css`中,为页签和容器添加新的CSS规则,确保它们按照垂直方向排列,同时处理滚动条的样式和行为。 4. **事件处理**:可能需要监听用户的滚动操作,更新页签的可见性和选中状态。 5....

    带标签页的菜单demo

    在IT行业中,构建用户界面时,菜单和标签页是常见的元素,它们对于提供良好的用户体验至关重要。这个"带标签页的菜单demo"是一个示例项目,旨在展示如何在静态网页上集成这种功能,同时可能考虑了多设备和浏览器的...

    如何在MATLAB中做出标签页的效果-tabpanel2.6.zip

    如何在MATLAB中做出标签页的效果-tabpanel2.6.zip 刚才看到有会员朋友说matlab中控件少,math说ActiveX中多的是啊,于是我也就顺便打开ActiveX看看里面都有什么。突然看到个单词tabbed……难道这就是困扰我多日的...

    tapestry4.02中封装ext的TabPanel组件

    在Web UI设计中,TabPanel 是一种常见的布局元素,它将不同的内容区域分割成不同的标签页,用户可以通过点击不同的标签来切换显示的内容。Ext 的 TabPanel 提供了美观的样式和易于操作的API,使得在Web应用中实现...

    easyui-tabbar右击弹出菜单

    3. **添加右键事件监听**:遍历TabPanel的所有标签页,使用`.on('contextmenu')`方法为每个标签页添加右键点击事件。例如: ```javascript $('#tabpanel').children('.tabs-tab').each(function() { $(this).on('...

    再探Ext中TreePanel控件和TabPanel控件搭配测试

    我们可以自定义TabPanel的样式,如改变标签的位置、大小,或者添加关闭按钮。 将TreePanel与TabPanel结合使用,可以创建出更为复杂且交互性强的用户界面。例如,我们可以在每个TabPanel的标签页中放置一个TreePanel...

    可以拖拽的页签面板----Ext TabPanel

    在EXT JS这个强大的JavaScript框架中,`Ext.TabPanel` 是一个非常重要的组件,它用于创建具有可切换页签的用户界面。在这个特定的例子中,我们关注的是一个扩展版的`Ext.TabPanel`,它增加了拖放(DragDrop)功能,...

    ExtJS tabPanel实例

    在ExtJS中,`tabPanel` 是一个非常重要的组件,它允许你在一个容器内创建多个标签页,每个标签页可以承载不同的内容,提供了类似桌面应用的用户体验。在实际开发中,`tabPanel` 经常被用来组织和展示复杂的信息。 `...

Global site tag (gtag.js) - Google Analytics