用友NC自定义按钮设置 下载本文

第一步:在接口中定义自定义按钮的整数值

package nc.ui.fk.pub.button;// client目录下

public interface PubPrivateButton { }

//自定义按钮:写入表体 --cqy--// int SaveToBody = 215;

第二步:在VO类中设置按钮的各个属性

package nc.ui.fk.pub.button;// client目录下

import nc.vo.trade.button.ButtonVO; public class PubPrivateButtonVO {

/**

* 单据文档管理按钮 * @return btnVO */ /**

*@author cqy

*@return 返回自定义按钮

*@function 设置自定义按钮\写入表体\的各个属性 *@Date 2007-11-19上午11:05:10 */

public nc.vo.trade.button.ButtonVO getSaveToBodyVo(){ }

ButtonVO btnVO = new ButtonVO();

btnVO.setBtnNo(PubPrivateButton.SaveToBody); btnVO.setBtnCode(\写入行\); btnVO.setBtnName(\写入行\);

btnVO.setHintStr(\写数据写入所选行对应字段\); btnVO.setBtnChinaName(\写入行\);

btnVO.setOperateStatus(new int[]{//设置以下操作状态下可用

return btnVO;

});

nc.ui.trade.base.IBillOperate.OP_REFADD,//参照增加时可用 nc.ui.trade.base.IBillOperate.OP_EDIT,//编辑时可用 nc.ui.trade.base.IBillOperate.OP_ADD//添加时可用

btnVO.setBusinessStatus(new int[]{ nc.vo.trade.pub.IBillStatus.ALL});

第三步:在对应的Ctrl类中将自定义按钮添加到卡片或列表

public int[] getCardButtonAry() {

return new int[] { IBillButton.Brow,IBillButton.Add, IBillButton.Edit,

IBillButton.Query, IBillButton.Delete, IBillButton.Cancel, IBillButton.Save,IBillButton.Line, IBillButton.Return , PubPrivateButton.SaveToBody};

}

//初始化表单按钮 --cqy--//

protected void initPrivateButton(){

//获取自定义按钮:\写入表体\

ButtonVO saveToBodyButton = (new

第四步:在单据UI类中初始化自定义按钮,使单据在初始化时加载自定义按钮

PubPrivateButtonVO()).getSaveToBodyVo();

}

addPrivateButton(saveToBodyButton);//添加自定义按钮:写入表体 super.initPrivateButton();

第五步:在EventHandle类中编写自定义按钮的功能操作

protected void onBoElse(int intBtn) {

}

if (intBtn == PubPrivateButton.SaveToBody) { }

saveToBodyReal();

private void saveToBodyReal() {//这个代码就不用写了吧 }

…… ……