一、在按钮添加完成后,按钮功能是没有生效的,需要编写代码进行相关处理。当然这是在本人的开发环境下面。
二、这个时候,就需要用到按钮的name属性了。所以添加按钮时,name属性最好要定义规范。代码如下:
@Override
public void onLoad() throws Exception {
super.onLoad();
btnAuditOrUnAudit();
}
// 该方法被onload()方法引用
public void btnAuditOrUnAudit() {
// 核准按钮监听
tbtnAudit.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent paramActionEvent) {
try {
// 调用系统核准方法
actionAudit_actionPerformed(paramActionEvent);
} catch (Exception e) {
e.printStackTrace();
}
}
});
// 反核准方法类似,只需要把按钮名称和系统方法名称进行修改
}
三、如果需要加上按钮逻辑判断的,那么就需要在系统核准和反核准方法里面加上逻辑代码。代码如下:
@Override
// 系统核准方法
public void actionAudit_actionPerformed(ActionEvent e) throws Exception{
// 获取编辑界面时的状态值
FarmBaseStatusEnum status = editData.getBaseStatus();
// 判断状态是否为未核准状态
if (status == FarmBaseStatusEnum.unApprove) {
editData.setBaseStatus(FarmBaseStatusEnum.approve);
this.tbtnAudit.setEnabled(false); //禁用核准按钮
this.tbtnUnAudit.setEnabled(true); //启用反核准按钮
refreshSelf(); //调用刷新界面方法
super.actionAudit_actionPerformed(e);//调整对应的后台方法
((EditUI) getUIWindow().getUIObject()).setSaved(true);//刷新界面界面
} else {
throw new EASBizException(new NumericExceptionSubItem("001","资料已核准!"));
}
}
// 刷新界面方法
public void refreshSelf() {
try {
ObjectUuidPK pk = new ObjectUuidPK(editData.getId());
IObjectValue objValue = getValue(pk);
setDataObject(objValue);
loadFields();
getUIContext().put("ID", pk);
getUIContext().put("InitDataObject", objValue);
} catch (Exception e) {
handUIException(e);
}
}