新建動(dòng)態(tài)表單空白頁(yè)面
向其添加工具欄并更改標(biāo)識(shí)為tbar_main,將工具欄的第一個(gè)按鈕標(biāo)識(shí)更改為baritem_hello并將其名稱(chēng)更改為按鈕;向動(dòng)態(tài)表單空白頁(yè)面添加一文本將其標(biāo)識(shí)更改為name將其名稱(chēng)更改為按鈕

- 新建插件類(lèi)并進(jìn)行編碼
package kd.bos.dynamicform.plugin;
import java.util.EventObject;
import kd.bos.dataentity.utils.StringUtils;
import kd.bos.form.control.events.BeforeItemClickEvent;
import kd.bos.form.control.events.ItemClickEvent;
import kd.bos.form.plugin.AbstractFormPlugin;
/**
* <p>Title: </p>
* <p>
* Description:
* itemClick 事件 試驗(yàn)
* </p>
* <p>Copyright: Copyright (c) 2020</p>
* @author xx
* @date 2020年3月6日
* @version 1.0
*/
public class ItemClickSample extends AbstractFormPlugin {
private final static String KEY_MAINBAR = "tbar_main";//工具欄
private final static String KEY_BARITEM_HELLO = "baritem_hello";//工具欄中的按鈕
private final static String KEY_NAME = "name";//文本
/**
* <p>Title: registerListener</p>
* <p>
* Description:
* </p>
* <p>Copyright: Copyright (c) 2020</p>
* @author xx
* @date 2020年3月6日
* @param param the bare_field_name
* @param e
* @see kd.bos.form.plugin.AbstractFormPlugin#registerListener(java.util.EventObject)
* @version 1.0
*/
@Override
public void registerListener(EventObject e) {
super.registerListener(e);
// 偵聽(tīng)主菜單按鈕點(diǎn)擊事件
this.addItemClickListeners(KEY_MAINBAR);
}
/**
* <p>Title: beforeItemClick</p>
* <p>
* Description:
* </p>
* <p>Copyright: Copyright (c) 2020</p>
* @author xx
* @date 2020年3月6日
* @param param the bare_field_name
* @param evt
* @see kd.bos.form.control.events.ItemClickListener#beforeItemClick(kd.bos.form.control.events.BeforeItemClickEvent)
* @version 1.0
*/
@Override
public void beforeItemClick(BeforeItemClickEvent evt) {
if (StringUtils.equals(KEY_BARITEM_HELLO, evt.getItemKey())){
String youName = (String)this.getModel().getValue(KEY_NAME);
if (StringUtils.isBlank(youName)){
this.getView().showMessage("hello, who are you?");
evt.setCancel(true); // 取消后續(xù)操作
}
}
}
/**
* <p>Title: itemClick</p>
* <p>
* Description:
* 用戶(hù)點(diǎn)擊菜單項(xiàng)時(shí),觸發(fā)此事件;
* 插件可以在此響應(yīng)自定義菜單項(xiàng)的點(diǎn)擊處理。
* </p>
* <p>Copyright: Copyright (c) 2020</p>
* @author xx
* @date 2020年3月6日
* @param param the bare_field_name
* @param evt
* @see kd.bos.form.plugin.AbstractFormPlugin#itemClick(kd.bos.form.control.events.ItemClickEvent)
* @version 1.0
*/
@Override
public void itemClick(ItemClickEvent evt) {
super.itemClick(evt);
if (StringUtils.equals(KEY_BARITEM_HELLO, evt.getItemKey())){
String youName = (String)this.getModel().getValue(KEY_NAME);
this.getView().showMessage("hello, " + youName + "!");
}
}
}
- debug重啟DebugServer后注冊(cè)插件并預(yù)覽測(cè)試,如下圖所示測(cè)試成功

以上就是我關(guān)于 金蝶云蒼穹動(dòng)態(tài)表單插件itemClick事件案例 知識(shí)點(diǎn)的整理與總結(jié)的全部?jī)?nèi)容,希望對(duì)你有幫助。。。。。。
分割線(xiàn)