熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> JSP教程 >> 正文

Extjs4 類的定義和擴展實例

2013-11-15 12:06:13  來源: JSP教程 

  一般定義方式注意方法和函數的添加方式不同(添加函數只能用override方式添加不知為什麼有知道的請搞之
定義一個類並給他一個方法

復制代碼 代碼如下:
Extdefine(SimpleClass{
welcome:function(){
alert(Welcome to the app);
}
});

  
使用Extoverride方法對已有類進行重載並添加函數

復制代碼 代碼如下:
Extoverride(SimleClass{
goodBye:function(){
alert(Goodbye);
}
funAll:function(){
thiswelcome();
thisgoodBye();
}
});

  
實例化類對象並調用新的方法

復制代碼 代碼如下:
var app = new SimpleClass();
apprunAll(); //Welcome to the app Goodbye

  
重載的另一種寫法

復制代碼 代碼如下:
SimpleClassoverride({
// New members
});

  
實際例子

復制代碼 代碼如下:
Extdefine(MyButton{
extend:ExtAction
initComponent: function(){
var me = this;
var initEnable = true; //初始權限
}
});
Extoverride(MyButton{
mysetenable:function(b){ //增加自定義函數設置按鈕權限
if ( thisinitEnable ) {
if (b){
thisenable();
}
else{
thisdisable();
}
}
else{
thisdisable();
}
}
});

  
例子

復制代碼 代碼如下:

  
Extdefine(PO_Head_Add_Panel {
extend: ExtformPanel
alias: widgetPO_Head_Add_Panel
//height:
//width:
frame: true
layout: anchor //該form分為兩列
bodyPadding: //偏移px
//baseCls: "xplain" //指定使用系統背景色
//defaults: { anchor: "%" msgTarget: "side" }
// anchor: %
defaults:{//統一設置表單字段默認屬性
//autoFitErrors : false//展示錯誤信息時是否自動調整字段組件寬度
labelSeparator ://分隔符
labelWidth : //標簽寬度
//width : //字段寬度
allowBlank : false//是否允許為空
//blankText : 不允許為空 //若設置不為空為空時的提示
labelAlign : right//標簽對齊方式
msgTarget :qtip //顯示一個浮動的提示信息
//msgTarget :title //顯示一個浏覽器原始的浮動提示信息
//msgTarget :under //在字段下方顯示一個提示信息
//msgTarget :side //在字段的右邊顯示一個提示信息
//msgTarget :none //不顯示提示信息
//msgTarget :errorMsg //在errorMsg元素內顯示提示信息
}
items:[{
xtype:combobox
name: ToAddress
labelWidth:
width:
queryMode: local
store:TmpAddressStore
displayField: AddrName
valueField: AddrName
editable : false// 是否允許輸入
forceSelection : true// 必須選擇一個選項
msgTarget: side
allowBlank: false //是否允許空值
fieldLabel: 送貨地址
}{
xtype:textfield
name: HRemark
labelWidth:
width:
msgTarget: side
allowBlank: false //是否允許空值
fieldLabel: 備注
}]
initComponent: function(){
var me = this;
var PoType = ; //可以定義屬性 objPoType 使用
var TmpHeadRec = Extcreate(PO_HeadData);

Extapply(this {
buttons: [{
text: 保存
handler:function(){
if (megetForm()isValid()) { //判斷提交的數據是否符合正則表達式
//保存功能
}
}
} {
text: 取消
handler: function () {
meownerCthide();
}
}]
SetFormValue:function(){ //自定義方法 objSetFormValue() 方式調用
meTmpHeadRec = HeadStoregetAt();
megetForm()findField(POType)setValue(meTmpHeadRecget(POType));
megetForm()findField(PONum)setValue(meTmpHeadRecget(PONum));
}
});

thiscallParent(arguments);
}
});


From:http://tw.wingwit.com/Article/program/Java/JSP/201311/20299.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.