转自:https://chenjumin.iteye.com/blog/668421
1、主要配置项:
closable:是否允许关闭窗口,默认为true。
closeAction:关闭窗口的动作,包括以下两种:
close:从DOM删除窗口,销毁窗口及其所属组件,窗口不再可用,重新显示需要调用show方法。此为默认值。
hide:通过设置可见性隐藏窗口,窗口还可用,调用show方法后重新显示。
constrain:是否约束窗口只能在容器内移动,默认为false。窗口默认渲染到document.body。
constrainHeader:是否约束窗口头部只能在容器内移动,默认为false。
draggable:是否可拖曳,默认为true。
resizable:是否可改变窗口的大小,默认为true。
modal:是否为模式窗口,默认为false。
maximizable:是否可最大化窗口,默认为false。
maximized:是否在初始化时最大化显示窗口,默认为false。
x:窗口的X坐标值。
y:窗口的Y坐标值。
manager:WindowGroup的引用。
expandOnShow:是否在窗口显示时展开它,默认为true。 当取值为false时,collapsed取值为true时,窗口初始显示时收缩。
minimizable:是否可最小化窗口,默认为false。需要自定义最小化行为。
defaultButton:当窗口获得焦点时,默认获得焦点的按钮。
plain:主体背景是否透明,默认为false。
2、主要方法:
show( [String/Element animateTarget], [Function callback], [Object scope] ):显示窗口。
hide( [String/Element animateTarget], [Function callback], [Object scope] ):隐藏窗口。
center():窗口居中显示。
close():关闭窗口,相当于closeAction值为close的情形。
maximize():最大化窗口。
restore():还原窗口大小。
toggleMaximize():在最大化和还原之间切换。
minimize():最小化窗口。
setActive( Boolean active ):激活窗口。
focus():窗口获得焦点。
toBack():后置窗口。
toFront( [Boolean e] ):前置窗口。
resize( Ext.Window this, Number width, Number height ):改变大小。
3、Ext.WindowGroup的主要方法:
hideAll()
sendToBack( String/Object win )
bringToFront( String/Object win )
get( String/Object id )
getActive()
each( Function fn, [Object scope] )
getBy( Function fn, [Object scope] )
var win;
Ext.get("btnShowWindow").on("click", function(){
if(!win){
win = new Ext.Window({
title: "窗口",
layout: "border",
500,
height: 300,
modal: true,
closeAction: "hide",
plain: true,
maximizable: true,
items: [
{
title: "组织机构",
region: "west",
collapsible: true,
split: true,
100
},
{
title: "组织人员",
region: "center"
}
],
buttons: [
{text:"关闭", handler:function(){
win.hide();
}}
]
});
}
win.show(this);
});
var i=1, mygroup;
function newWin() {
var x = i++;
var win = new Ext.Window({
id:"win"+x,
title:"窗口"+x,
400,
height:300,
maximizable:true,
manager:mygroup
});
win.show();
}
function toBack(){
mygroup.sendToBack(mygroup.getActive());
}
}
function hideAll(){
mygroup.hideAll();
}
Ext.onReady(function(){
mygroup = new Ext.WindowGroup();
Ext.get("btn").on("click", newWin);
Ext.get("btnToBack").on("click", toBack);
Ext.get("btnToFront").on("click", toFront);
Ext.get("btnHide").on("click", hideAll);
});