給常用控件添加事件
一、F7
//F7控件增加值改變監聽
pluginCtx.getKDBizPromptBox("prmtCompany").addDataChangeListener(function (event){
com.kingdee.eas.util.client.MsgBox.showInfo("F7值改變事件");
});
// 選擇職員後,将職員名稱帶出
// F7控件增加值改變監聽
pluginCtx.getKDBizPromptBox("prmtPerson").addDataChangeListener(function (event){
// 擷取職員F7資訊
var personInfo = pluginCtx.getKDBizPromptBox("prmtPerson ").getValue();
var name = personInfo.get("name"));//擷取職員名稱
// 将職員名稱指派到名稱控件。
pluginCtx.getKDTextField("txtName").setStringValue(name);
});
// 選擇付款類型後,根據邏輯将科目F7指派
// F7控件增加值改變監聽
// 付款類型字段監聽,當字段改變的時候觸發
pluginCtx.getKDBizPromptBox("f7PayBillType").addChangeListener(function(e){
var payBillTypeInfo = pluginCtx.getKDBizPromptBox("f7PayBillType").getValue();//擷取付款類型資訊
// 擷取付款類型ID資訊用于對照,這裡也可以提取其他資訊對照,比如名稱,編碼等
var id = payBillTypeInfo.get("id");
if(id == "1234"){
// 根據ID查詢科目,并變更
var accountViewInfo=com.kingdee.eas.basedata.master.account.AccountViewFactory.getRemoteInstance().getAccountViewCollection("where Id = '//lZ0U0sSfK4Ego95AUafZ2pmCY='");
if(accountViewInfo.size() > 0){
// 改變科目字段
com.kingdee.eas.util.client.MsgBox.showInfo(accountViewInfo.get(0));
pluginCtx.getKDBizPromptBox("prmtOppAccount").setData(accountViewInfo.get(0));
}
}
});
二、CheckBox(複選框)值改變事件
// 擷取控件
var chkIsContract= pluginCtx.getKDCheckBox("chkIsContract");
// 添加監聽事件
chkIsContract.addChangeListener(function(event){
com.kingdee.eas.util.client.MsgBox.showInfo("複選框值改變事件");
});
三、ComboBox(下拉框)值改變事件
//選擇事件
var bizTypeCombo= pluginCtx.getKDComboBox ("bizTypeCombo");
bizTypeCombo.addItemListener (function(event,method){
com.kingdee.eas.util.client.MsgBox.showInfo("下拉框值改變事件");
});
四、Button(按鈕)值改變事件
// Button點選事件
var bjButton= pluginCtx.getKDButton ("bjButton");
bjButton.addActionListener (function(event){
com.kingdee.eas.util.client.MsgBox.showInfo("按鈕值改變事件");
});
// 例編碼重複驗證按鈕,選擇付款類型後,根據邏輯将科目F7指派
// 為界面按鈕添加點選監聽
pluginCtx.getKDButton("kDButton").addActionListener(function(event,methodName){
// 擷取界面編碼
var number = pluginCtx.getKDTextField("txtNumber").getStringValue();
// 拼接sql
var sql = "SELECT * FROM T_DEM_PurOrderR WHERE Fnumber = '" + number + "'";
// 擷取資料庫工具接口
var fMIsqlFacade = com.kingdee.eas.fm.common.FMIsqlFacadeFactory.getRemoteInstance();
var rs = fMIsqlFacade.executeQuery(sql.toString(), null);
// 結果判斷
if(rs.size() > 0){
com.kingdee.eas.util.client.MsgBox.showInfo("編碼已存在");
}
});
五、TextFiled (文本框)值改變事件
// 擷取文本框對象
var textFiled= pluginCtx.getKDTextFiled ("textFiled");
// 添加監聽事件
textFiled.addActionListener(function(event){
com.kingdee.eas.util.client.MsgBox.showInfo("文本框值改變事件");
});
// 添加焦點事件
textFiled.addFocusListener(function(event, methodName){
com.kingdee.eas.util.client.MsgBox.showInfo("焦點事件");
// 獲得焦點事件
if(methodName == "focusGained"){
com.kingdee.eas.util.client.MsgBox.showInfo("獲得焦點事件");
}
// 失去焦點事件
if(methodName == "focusLost"){
com.kingdee.eas.util.client.MsgBox.showInfo("失去焦點事件");
}
});
// 添加滑鼠事件
textFiled.addMouseListener (function(event, methodName){
com.kingdee.eas.util.client.MsgBox.showInfo("滑鼠事件");
// 滑鼠單擊事件
if(methodName == "mouseClicked"){
com.kingdee.eas.util.client.MsgBox.showInfo("滑鼠單擊事件");
}
// 滑鼠按下事件
if(methodName == "mousePressed"){
com.kingdee.eas.util.client.MsgBox.showInfo("滑鼠按下事件");
}
// 滑鼠擡起事件
if(methodName == "mouseReleased"){
com.kingdee.eas.util.client.MsgBox.showInfo("滑鼠擡起事件");
}
// 滑鼠滑入事件
if(methodName == "mouseEntered"){
com.kingdee.eas.util.client.MsgBox.showInfo("滑鼠滑入事件");
}
// 滑鼠滑出事件
if(methodName == "mouseExited"){
com.kingdee.eas.util.client.MsgBox.showInfo("滑鼠滑出事件");
}
});
六、Tree(樹形控件)值改變事件
//增加tree的選擇事件
var accountTree = pluginCtx.getKDTree ("accountTree");
accountTree.addTreeSelectionListener(function(event){
com.kingdee.eas.util.client.MsgBox.showInfo("樹形控件值改變事件");
});
七、 TabledPane(頁簽)改變事件
var tabbedPane = pluginCtx.getTabbedPane("tabbedPane");
// 頁簽切換事件
tabbedPane.addChangeListener(function(event){
com.kingdee.eas.util.client.MsgBox.showInfo("頁簽改變事件");
});
八、Table(表格)編輯事件監聽
// KDTable增加表格編輯事件監聽
pluginCtx.getKDTable("kdtEntrys").addKDTEditListener(function(event,methodName){
// 開始編輯了
if(methodName == "editStarted"){
com.kingdee.eas.util.client.MsgBox.showInfo("開始編輯了");
}
// 停止編輯了
if(methodName == "editStopped"){
com.kingdee.eas.util.client.MsgBox.showInfo("停止編輯了");
}
// 開始編輯中
if(methodName == "editStarting"){
com.kingdee.eas.util.client.MsgBox.showInfo("開始編輯中");
}
// 停止編輯中
if(methodName == "editStopping"){
com.kingdee.eas.util.client.MsgBox.showInfo("停止編輯中");
}
// 編輯值改變
if(methodName == "editValueChanged"){
com.kingdee.eas.util.client.MsgBox.showInfo("編輯值改變");
}
});
// KDTable增加滑鼠事件監聽
pluginCtx.getKDTable("kdtEntrys").addKDTMouseListener(function(event,methodName){
if(event.getClickCount() == 2){
} else if(event.getClickCount() == 1){
}
});
// KDTable增加單元格Active事件監聽
pluginCtx.getKDTable("kdtEntrys").addKDTActiveCellListener(function(event,methodName){
var table = (com.kingdee.bos.ctrl.kdf.table.KDTable)
e.getSource();
var preLine = event.getPrevRowIndex();
var line = event.getRowIndex();
});
九、 DatePicker(日期控件)值改變事件
// DatePicker增加表格編輯事件監聽
pluginCtx.getKDDatePicker ("pkDatePicker").addDataChangeListener(function (event){
com.kingdee.eas.util.client.MsgBox.showInfo("日期控件值改變事件");
});