`
raymond.chen
  • 浏览: 1437258 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Ext.TabPanel

阅读更多

TabPanel不显示面板的标题和头部工具条。

 

1、主要配置项:
      activeTab:初始激活的tab,索引或者id值,默认为none
 
      autoTabs:是否自动将带有'x-tab'样式类的div转成tabs添加到TabPanel中,默认为false。
            当该配置项设为true时,需要设置deferredRender为false,还必须使用applyTo。
      deferredRender:是否延迟渲染,默认为true。
      autoTabSelector:默认为'div.x-tab'。
 
      resizeTabs:是否可以改变tab的尺寸,默认为false。
      minTabWidth:tab的最小宽度,默认为30。
      tabWidth:每个新增加的tab宽度,默认为120。
      tabTip:tab的提示信息
 
      tabPosition:tab位置,可选值有top、bottom,默认为top。
      enableTabScroll:是否允许Tab溢出时可以滚动,默认为false。
      closable:tab是否可关闭,默认为false
 
      scrollDuration:每次的滚动时长,默认为0.35毫秒。
      scrollIncrement:每次的滚动步长,默认为100像素。
      wheelIncrement:每次鼠标滑轮的滚动步长,默认为20像素。

 

2、主要方法:
      activate( String/Panel tab )
      getActiveTab():获取当前活动的tab
      get( String/Number key ):根据组件id或者索引获取组件
      getItem(String id):根据tab id获取tab
      setActiveTab( String/Number item )
      remove( Component/String component, [Boolean autoDestroy] )
      removeAll( [Boolean autoDestroy] )

 

3、范例

new Ext.TabPanel({
	id: "mainTab",
	renderTo: "div1",
	width: 500,
	height: 300,
	activeTab: 0,
	defaults: {
		autoScroll: true,
		autoHeight:true,
		style: "padding:5"
	},
	items:[
		{title:"normal", tabTip:"mormal", html:"tab1", iconCls:"add"},
		{title:"ajax1", autoLoad:"messagebox.action", iconCls:"delete"},
		{title:"ajax2", autoLoad:{url:"test.action", params:"p1=v1", nocache:true}, iconCls:"search"},
		{title:"event", iconCls:"save", listeners:{activate:activateHandler}}
	],
	enableTabScroll: true
});

function activateHandler(tab){
	//alert(tab.title);
}

var index = 0;
function addTab(){
	var tabs = Ext.getCmp("mainTab");
	
	var t = tabs.getItem("tab"+index);
	if(t) tabs.remove(t);
	
	tabs.add({
		id: "tab" + (++index),
		title: "NewTab" + index,
		html: "new tab" + index,
		closable: true
	}).show();
}

//按钮渲染到div1元素之前
new Ext.Button({
	text:"add tab",
	handler:addTab,
	iconCls:"add"
}).render(document.body, "div1");

 

 

 

 

在使用TabPanel时需要注意:

       1、在创建Ext.TabPanel时deferredRender配置项经常会被忽略。该配置项的默认值是true。true表示只有在用户第一次访问选项卡时,该选项卡的panel才会被渲染。 所以当我们有可能使用脚本操作选项卡时,谨记将该配置项设置为false。

 

       2、在FormPanel中使用TabPanel,如果在TabPanel中不定义deferredRender的值为false,那么,当你使用Load方法为Form加载数据,或使用setValue为没有激活过的Panel的控件赋值时,将会发生错误。原因是,在默认设置下deferredRender为true,TabPanel并不会渲染所有Panel上的控件,只有在该Panel被激活时才渲染控件,所以当你为这些控件设置数据时,将会找不到这些控件,会出现错误。因而,在FormPanel中使用TabPanel,一定要在TabPanel中设置deferredRender的值为false,强制TabPanel在Layout渲染时同时渲染所有Panel上的控件。

 

 

 

应用范例代码片段:

    //关闭tab项
    var tabpanel = Ext.getCmp("deskTabPanel");
    if(tabpanel!=null && tabpanel.getActiveTab()!=null){
         tabpanel.remove(tabpanel.getActiveTab());
    }
 
    //隐藏tab项
    Ext.getCmp("deskTabPanel").hideTabStripItem(0);
 
    //激活tab项
    Ext.getCmp("deskTabPanel").setActiveTab("noticeAttachmentGrid");

 

 

  • 大小: 16.1 KB
分享到:
评论
2 楼 wgang114 2012-04-18  
[url][/url][flash=200,200][/flash][img][/img]
引用
[/u][u][/u][u][/u][u][/u][u][u][/u]
[/url][url]
1 楼 gaowei52306 2011-05-16  
超级金典
赞一个!!!
新手,学习中。。。。。

相关推荐

    ExtJS-3.4.0系列:Ext.TabPanel

    在本文中,我们将深入探讨ExtJS中的`Ext.TabPanel`组件,它是创建多标签界面的核心元素。`Ext.TabPanel`允许开发者在单个容器中组织多个面板或视图,每个面板都有自己的标题,并且可以通过标签页进行切换。让我们...

    extjs4.2.1 tabPanel刷新及关闭标签

    上述代码中的`this.tabPanel.getActiveItem()`用于获取当前活动的标签页,之后通过`item.loader.load()`来触发数据的重新加载。如果标签页本身并没有定义`loader`对象,则可以通过动态创建的方式为其添加一个`...

    ext的tabpanel的激活与注意事项

    tabPanel.setActiveTab(desiredTab); // 激活目标选项卡 ``` 在这个例子中,`setActiveTab()`方法接收一个选项卡组件作为参数,这个组件通常是我们通过`Ext.getCmp()`或者其他方式获取的。调用这个方法后,tabpanel...

    ExtJs 学习笔记 Ext.Panle Ext.TabPanel Ext.Viewport第1/3页

    ExtJs是一个基于JavaScript的框架,用于构建前端交互式的Web应用程序。...学习和掌握Ext.Panel、Ext.TabPanel和Ext.Viewport的使用方法,可以帮助我们更好地设计和实现富有交互性和视觉吸引力的Web应用程序界面。

    ext.js拖动3.4版本插件

    var tabPanel = new Ext.TabPanel({ renderTo: Ext.getBody(), activeTab: 0, draggableTabs: true, items: [ { title: 'Tab 1', html: 'Content 1' }, { title: 'Tab 2', html: 'Content 2' } ] }); ``` 在...

    treepanel 和 tabpanel 完整

    在本文中,我们将深入探讨`TreePanel`和`TabPanel`这两个重要的Ext JS组件,并讨论如何将它们结合在一起,以创建功能丰富的用户界面。`TreePanel`用于展示层次结构的数据,而`TabPanel`则提供了多标签页的功能,两者...

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

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

    Ext.Viewport布局

    在给定的代码片段中,我们看到`Ext.Viewport`被用来创建一个具有复杂结构的应用界面,包含`Ext.TabPanel`在内的多个区域。 #### 1. `Ext.Viewport`核心特性与作用 `Ext.Viewport`是一个特殊的布局管理器,其设计...

    Ext组件描述,各个组件含义

    **2.11 Tab Panel (Ext.TabPanel)** - **xtype**: `tabpanel` - **功能描述**:Tab Panel 是一个包含多个选项卡的容器。 - **主要用途**:用于展示多个相关的数据集或功能模块,每个选项卡代表一个不同的页面。 **...

    课程ExtTabPanel文档tab嵌套tab.pdf

    【Ext.TabPanel】是ExtJS库中的一个组件,主要用于创建带有多个选项卡的用户界面。在本文中,我们将深入探讨如何使用Ext.TabPanel创建和管理选项卡,包括基本的使用方法、内容引入方式以及如何实现选项卡的嵌套。 1...

    extJs 2.1学习笔记

    4. Ext.TabPanel篇 5 5. Function扩展篇 7 6. Ext.data.Store篇 10 7. Ext.data.JsonReader篇一 12 8. Ext.data.JsonReader篇二 15 9. Ext.data.HttpProxy篇 19 10. Ext.data.Connection篇一 20 11. Ext.data....

    ExtJS TabPanel beforeremove beforeclose使用说明

    centerPanel = new Ext.TabPanel({ // ... listeners: { beforeremove: function(ct, component) { return false; // 阻止Panel被移除 } } }); ``` 然而,仅仅阻止`beforeremove`事件并不足以实现关闭确认...

    Ext.plugins.TDGi.tabScrollerMenu插件的使用

    Ext.plugins.TDGi.tabScrollerMenu插件是用于Ext JS框架的一个扩展,它主要用于解决TabPanel组件中的选项卡过多时的展示问题。当TabPanel的选项卡数量超过一定限制,这个插件会提供一个下拉菜单,用户可以通过该菜单...

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

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

    Ext中TabPanel的动态页面加载

    tabPanel.on('tabchange', function(tabPanel, newTab, oldTab, eOpts) { if (newTab.lazy && !newTab.contentLoaded) { newTab.contentLoaded = true; newTab.setLoading(true); // 显示加载指示器 // 示例:...

    tapestry4.02中封装ext的TabPanel组件

    1. TabPanel.java:这是一个Java源文件,其中包含了对 Ext TabPanel 的封装。在这个文件中,你可能会看到一个Tapestry组件类,它扩展了Tapestry的基础组件,并实现了TabPanel的功能。可能包含属性来定义TabPanel的...

    Extjs帮助文档.pdf

    接下来将详细介绍文档中提到的几个核心概念,包括`Ext.MessageBox`、`Ext.Panel`、`Ext.Window`、`Ext.FormPanel`、`Ext.TabPanel`、`Ext.XTemplate`和`Ext.TreePanel`以及如何在Extjs中实现主题(换肤)功能。...

    ext 的拖拽示例,很不错的

    ext拖拽示例,可以通过ext生成的layout自动拖拽,效果很不错的

Global site tag (gtag.js) - Google Analytics