日期:2014-05-17 浏览次数:20767 次
Panels、TabPanels及Windows都是ExtJS常用的容器组件。
下面是一个典型的Panel的应用。通过阅读这个例子,你可以对Panel容器组件的使用有一个较为完整的了解:
var myBtnHandler = function(btn) { Ext.MessageBox.alert('You Clicked', btn.text); } var fileBtn = new Ext.Button({ text : 'File', handler : myBtnHandler }); var editBtn = new Ext.Button({ text : 'Edit', handler : myBtnHandler }); var tbFill = new Ext.Toolbar.Fill(); var myTopToolbar = new Ext.Toolbar({ items : [ fileBtn, tbFill, editBtn ] }); var myBottomToolbar = [ { text : 'Save', handler : myBtnHandler }, '-', { text : 'Cancel', handler : myBtnHandler }, '->', '<b>Items open: 1</b>', ]; var myPanel = new Ext.Panel({ width : 200, height : 150, title : 'Ext Panels rock!', collapsible : true, renderTo : Ext.getBody(), tbar : myTopToolbar, bbar : myBottomToolbar, html : 'My first Toolbar Panel!', buttons : [ { text : 'Press me!', handler : myBtnHandler } ], tools : [ { id : 'gear', handler : function(evt, toolEl, panel) { var toolClassNames = toolEl.dom.className.split(' '); var toolClass = toolClassNames[1]; var toolId = toolClass.split('-')[2]; Ext.MessageBox.alert('You Clicked', 'Tool ' + toolId); } }, { id : 'help', handler : function() { Ext.MessageBox.alert('You Clicked', 'The help tool'); } } ] });?
运行结果:
下面是Exit.Window容器组件的应用例子,注意其中的animateTarget : btn.el属性的使用,通过这个属性,可以以动感的方式打开窗口:
var win; var newWindow = function(btn) { if (! win) { win = new Ext.Window({ animateTarget : btn.el, //注意这句的作用 html : 'My first vanilla Window', closeAction : 'hide', id : 'myWin', height : 200, width : 300,