Extjs 如何实现更新panel 中的tbar

问题描述

var panel = new Ext.Panel({title:'toolbar-changebar', renderTo:Ext.getBody(),tbar:[{text:'btn1',handler:function (){alert("btn1");}},{text:'btn2',handler:function (){ changeBar ();}}]});function changeBar (){var t=[{text:'abc'},{text:'aab'}];var tbItem = panel.tbar;panel.remove(panel.getTopToolbar().get(1));panel.getTopToolbar().add(t);panel.doLayout();}想要实现按btn2按钮时,将btn1,btn2去掉,更新为新的tbar ,t

解决方案

var panel = new Ext.Panel({title:'toolbar-changebar', renderTo:Ext.getBody(),tbar:[{text:'btn1',handler:function (){alert("btn1");}},{text:'btn2',handler:function (){ changeBar ();}}]});function changeBar (){var t=[{text:'abc'},{text:'aab'}];var tbItem = panel.getTopToolbar();tbItem.removeAll(); tbItem.add(t);panel.doLayout();}
解决方案二:
var panel = new Ext.Panel({ title:'toolbar-changebar', renderTo:Ext.getBody(), tbar:[{ text:'btn1', id:"btn1", handler:function (){ alert("btn1"); } },{ text:'btn2', handler:function (){ changeBar (); } }] }); function changeBar (){ var t=[{text:'abc'},{text:'aab'}]; var tbItem = panel.getTopToolbar(); tbItem.remove("btn1",true);//第1个参数删除组件的id, //第2个参数 设置为true将自动调用被删组件的Ext.Component.destroy 函数 tbItem.add(t); tbItem.doLayout(); }
解决方案三:
上面错了点应该是 tbItem.doLayout();

时间: 2025-01-20 19:29:31

Extjs 如何实现更新panel 中的tbar的相关文章

编辑器-extjs的panel中contentEl内容拼接

问题描述 extjs的panel中contentEl内容拼接 本来是一个panel,里面有一个编辑器. 需求是生成的文章有4个tab. 现在要求做成4个含编辑器的panel,做出一个可选的功能,在编辑器A中输入内容,则文章显示出tab A,若编辑器B中无内容,则文章中无tab B. 我不知道如何获取编辑器的内容,然后把他们拼接在一起.最好是,拼接后中间加上分割标签,这样方便修改的时候,把各个编辑器的内容放入对应的编辑器. 声明编辑器的代码如下,我未用过ext,还请大神帮忙说的浅显明了一些. va

获得html中img标签-extjs中如何获得获得panel中的html标签元素

问题描述 extjs中如何获得获得panel中的html标签元素 new Ext.Panel({ id : 'imagePanel', region : 'center', layout: 'fit', border : false, autoScroll : true, modal:true, html : "<img height = " + height + " src" + Xy.Consts.AppBase + "attachMgmt/vi

extjs4-ExtJs4 panel 中添加 iframe 问题

问题描述 ExtJs4 panel 中添加 iframe 问题 代码如下: Ext.onReady(function() { var makemain1=new Ext.panel.Panel({ style : 'margin : 20 auto', id:'makemain1', buttonAlign : 'center', tbar:[{ text:'重新获取模板', iconCls:'btmodule', handler:function(){ } }], height:480, it

panel中的chart-extjs如何把折线图chart放入到panel中进行显示

问题描述 extjs如何把折线图chart放入到panel中进行显示 Ext.onReady(function() { //创建每月贴现价格统计图 //通过JSON从数据库中获取数据 var chartStore = Ext.create('Ext.data.JsonStore', { fields : [ 'date', 'price1', 'price2', 'price3', 'price4' ], proxy : { type : 'ajax', url : 'chartSearch',

extjs-Extjs中store问题,通过id,从后台查数据存入store中,并在panel中显示

问题描述 Extjs中store问题,通过id,从后台查数据存入store中,并在panel中显示 //创建model Ext.regModel('rukuInfos',{ fields:[{name:'id'},{name: 'rukuRemark'},{name:'rukuAcount'},{name:'rukuDateTime'},{name:'rukuId'}] }); //有问题的方法 function showruku(){ var rukustore = Ext.create('E

java swing中一个JTree如何在多个panel中显示

问题描述 java swing中一个JTree如何在多个panel中显示 要实现的功能是 需要在2个panel(A, B )中显示用户组的树结构, 其中有一个panel(B)中提供了对树的增删改,运行程序首先显示A, 通过A上的按钮点击事件显示B, 要在B更改同时更新A上的显示情况, 现在遇到的情况是:当点击A上的按钮显示B时,A上的tree就不见了: 怎么解决啊? A的部分代码 DefaultMutableTreeNode root = new DefaultMutableTreeNode("

asp.net 中一次性更新DATAGRID中所有记录

asp.net|datagrid|asp.net|datagrid 在asp.net中,如何一次性更新datagrid中的所有记录呢?可以用如下的方法,首先,要对DATAGRID中要更新的列建立模版列,比如:asp:datagrid id="dgPopularFAQs" runat="server"AutoGenerateColumns="False"...> <Columns> <asp:BoundColumn Data

ASP中一次更新DATAGRID中所有记录

在asp.net中,如何一次性更新datagrid中的所有记录呢?可以用如下的方法,首先, 要对DATAGRID中要更新的列建立模版列,比如:  asp:datagrid id="dgPopularFAQs" runat="server" AutoGenerateColumns="False" ...> ItemStyle-HorizontalAlign="Center" HeaderText="FAQ ID&

更新MFC中的视图,跟踪.NET Framework中的事件

本文配套源码 如何更新MFC中的视图? 如何跟踪.NET Framework 中的事件? 我在 MDI 程序中打算通过 CMainFrame 中的定时器事件来更新所有的子窗口. 视图用于显示许多图表.用如下的代码只能更新当前活动窗口: GetActiveWindow()->GetActiveView()->GetDocument() 是否有其它的方法从 CMDIFrame 类中获得所有的子窗口或者所有的文档? Makarand 你的情况并不罕见.许多采集实时数据的程序需要定时更新屏幕.即使你的