-
extjs tree TabPanel 布局问题5
用extjs中的Tree+TabPanel进行布局时,遇到一个问题,当点击左边菜单面板中的伸缩按钮,把菜单面板隐藏时,右边的TabPanel的宽度不能自动调整。代码如下。
var rootNode = new Ext.tree.AsyncTreeNode({
id : "0",
text : "管理菜单"
});
var loader = new Ext.tree.TreeLoader({
dataUrl : 'treeMenuLoadAction.action',// 请求地址
baseParams : {
params : id
}
});
var treeMenu = new Ext.tree.TreePanel({
root : rootNode,
animate : true, // 开启动画效果
enableDD : false, // 不允许子节点拖动
border : false, // 没有边框
singleClickExpand : true,
loader : loader,
listeners : {
beforeclick : synb,
click : sync,
expandnode : checkUserSession
}
});
treeMenu.getRootNode().expand();
var treePanel = new Ext.Panel({
region : 'west',
renderTo : 'treeDiv',
split : true,
width : 200,
autoScroll : true,
bodyStyle:'overflow-x:hidden;',
layout : 'form',
collapseMode : 'mini',
border : true,
layoutConfig : {
titleCollapse : false,
animate : true,
activeOnTop : false,
collapsible : true
},
tbar : [{
iconCls : 'icon-expand-all',
text : '展开',
tooltip : '展开所有节点',
handler : function() {
treeMenu.expandAll();
},
scope : this
}, '-', {
iconCls : 'icon-collapse-all',
text : '收缩',
tooltip : '收缩所有节点',
handler : function() {
treeMenu.collapseAll();
},
scope : this
}],
items : [treeMenu]
});
var maintabpanel = new Ext.TabPanel({
id : 'doc-body',
region : 'center',
margins : '0 5 5 0',
resizeTabs : true,
minTabWidth : 135,
tabWidth : 135,
plugins : new Ext.ux.TabCloseMenu(),
enableTabScroll : true,
layoutOnTabChange : true,
activeTab : 0,
frame : true,
tabMargin : 5,
monitorResize: true,
items : {
id : 'welcome-panel',
title : '我的办公室',
tabTip : '我的办公室',
iconCls : 'icon-home',
html : '<iframe width="100%" height="100%" frameborder=0 src="'
+ getHostUrl() + getURLPath() + '/view/main/queryMyOfficeInfo.action"></iframe>',
autoScroll : true
}
});
var viewport = new Ext.Viewport({
layout : 'border',
items : [{
cls : 'docs-header',
height : 55,
region : 'north',
xtype : 'box',
el : 'header',
border : false,
margins : '0 0 5 0'
}, treePanel, maintabpanel]
});
viewport.doLayout();
function synb(node, e) {
return node.isLeaf();
}
function sync(node, e) {
if (node.isLeaf()) {
e.stopEvent();
var n = maintabpanel.getComponent(node.id);
var iconCls = "icon-form";
if (!n) {
var n = maintabpanel.add({
id : node.id,
title : node.text,
tabTip : node.text,
iconCls : iconCls,
closable : true,
html : '<iframe width="100%" height="100%" frameborder=0 src="'
+ node.attributes.href + '"></iframe>'
});
}
maintabpanel.setActiveTab(n);
}
}
在网上找了很多方法,都不好用,请大家帮忙看看,不胜感谢。。
2012年5月17日 16:23
目前还没有答案
相关推荐
根据给定的信息,我们可以深入探讨ExtJs中Tree组件的相关知识点,包括其定义、特性以及具体的配置选项等。 ### ExtJs Tree概述 ExtJs Tree是一种基于ExtJs框架的树形控件,它允许开发者构建出复杂的数据层次结构。...
在ExtJS框架中,TabPanel布局是一种常用的组件布局方式,常用于创建带有多个标签页的应用界面,每个标签页可以承载不同的内容。在这个例子中,开发者使用了Ext3.0版本来构建一个包含多个区域(north, south, east, ...
在ExtJS中,Tree和Tab是两种常用的组件,分别用于展示层次结构的数据(如目录结构)和创建多页面布局。本篇文章将详细探讨如何利用JSON数据来实现这两者的交互。 首先,让我们了解一下`Tree`组件。在ExtJS中,Tree...
3. **TabPanel布局**: - TabPanel是ExtJs中的一种组件,用于展示多个面板,每个面板在一个Tab页中。中心的Tab选项卡通常使用这个布局。 - TabPanel支持动态添加、删除和切换Tab页,每个Tab页可以是一个独立的组件...
2. **选项卡(Tab)**: TabPanel是ExtJS中的另一个核心组件,它允许在一个容器中组织多个面板,每个面板对应一个选项卡。这样可以有效利用屏幕空间,提供多工作区。在后台系统中,不同的选项卡可以承载不同的功能...
Extjs4 带复选框的树(Checkbox tree) Extjs4 新的布局方式 Extjs4 锁定表头(Locking Grid)功能 Extjs4.0 MVC实例 Extjs4.0动态填充combobox数据 Extjs4中up()和down()的用法 ExtJS4学习笔记(一)---window的创建 ...
Extjs5.0从入门到实战... panel, tabpanel,Tree, grid, form表单(及其验证方法),数据组件: store,model等,讲解了动态菜单、单表和子父表模块等的开发方法以及后端spring,spring mvc,mybatis的整合和数据打通等。
6. **页面布局**:整个页面可能使用了ExtJS 的布局管理器,如`border`布局,将页面分为左侧和右侧两部分,左侧是TreePanel,右侧是可折叠的TabPanel。 7. **URL 链接处理**:`嘉瑞传播.url`可能是一个树节点的`href...
1. **ExtJS 2.0 API**: 在ExtJS 2.0中,核心组件系统已经相当成熟,包括Grid、Form、Tree等关键组件。这个版本引入了布局管理器,使得页面布局更加灵活。同时,它支持数据绑定,便于与服务器端进行数据交互。 2. **...
1. **EXTJS组件**:EXTJS的核心是它的组件模型,包括GridPanel、TreePanel、PropertyGrid、EditorGridPanel、TabPanel、FormPanel、Panel、Window、ToolTip和FieldSet等。这些组件可以组合起来创建复杂的用户界面,...
2. **布局管理**:ExtJS 提供了多种布局方式,如 `FitLayout`、`BorderLayout` 和 `CardLayout` 等,可以帮助开发者轻松地管理和调整界面布局。 3. **数据绑定**:ExtJS 支持数据绑定,可以方便地将数据模型与视图...
《精通JS脚本之ExtJS框架》由浅入深地讲解了ExtJS在Web开发中的相关技术。本书共分17章,分别介绍了JavaScript的对象编程、JavaScript浏览器对象模型和事件机制、ExtJS的核心类库和组件、ExtJS的事件处理方式、设计...
在ExtJS 2.2中,开发者可以利用其丰富的UI组件,如表格(Grid)、树形结构(Tree)、表单(Form)、面板(Panel)等,来构建复杂的Web应用。API文档通常会涵盖以下几个主要部分: 1. **基础概念**:讲解ExtJS的核心...
通过上述内容,我们已经详细介绍了如何搭建ExtJS开发环境、使用布局管理器、事件机制、窗体、表单、Tree、Tab、Grid、数据展示以及如何使用Ajax技术。希望这些知识点能帮助您更好地理解和使用ExtJS框架。
或者在ExtJS的XML布局中使用: ```xml ``` #### vtype详解 虽然题目中提及了`vtype`,但在提供的内容中并未详细展开。`vtype`在ExtJS中主要用于表单验证,它定义了一组预设的验证规则,如`email`, `url`, `date`...