NC65中的按钮注册

创建按钮功能实现的Action

package nc.ui.hsw.actions;
import java.awt.event.ActionEvent;

import nc.ui.hsw.show.windows.SplitLineDialogNew;
import nc.ui.hsw.show.windows.SplitLineDialog;
import nc.ui.pu.m23.view.ArriveCardForm;
import nc.ui.pub.beans.MessageDialog;
import nc.ui.so.salequotation.model.SalequoModel;
import nc.ui.so.salequotation.view.SalequoBillForm;
import nc.ui.uif2.NCAction;
import nc.vo.pubapp.pattern.exception.ExceptionUtils;
import nc.vo.so.salequotation.entity.SalequotationBVO;
public class XSBJDbuttonAction extends NCAction{
    private final String btncode = "PUSH_FX";

    private final String btnname = "代替品";
    
    private SalequoModel model;
    private ArriveCardForm form;
    private SalequoBillForm billForm;
    
    @Override
    public void doAction(ActionEvent arg0) throws Exception {
        int[] srow = null;
        SalequotationBVO bvo =null;
        // TODO 自动生成的方法存根
        srow = this.getBillForm().getBillCardPanel().getBillTable()
                .getSelectedRows(); // 当前所选界面是卡片界面

        if (srow == null || srow.length == 0) {
            //错误提示
            ExceptionUtils.wrappBusinessException("请选一行到货单表体!");
            return;
        } else if (srow.length > 1) {
            //错误提示
            ExceptionUtils.wrappBusinessException("只能选一行到货单表体!");
            return;
        }
        //this.getBillForm().getBillCardPanel().getBillData();
        //form.getBillCardPanel().getBodyItems();
        //获取当前选中的表体VO
        bvo = (SalequotationBVO) this.getBillForm().getBillCardPanel().getBillModel()
                .getBodyValueRowVO(srow[0], SalequotationBVO.class.getName());
        if(null==bvo.getVbdef6()||"".equals(bvo.getVbdef6())){
            //错误提示
            MessageDialog.showErrorDlg(this.getBillForm(), "警告", "请先选择发货仓库再进行替代品选择!!");
            return;
        }
        if(null==bvo.getNassistnum()||"".equals(bvo.getNassistnum())){
            //错误提示
            MessageDialog.showErrorDlg(this.getBillForm(), "警告", "请先填写数量再进行替代品选择!!");
            return;
        }
        /*AbstractFunclet funclet = (AbstractFunclet) getModel().getContext()  
                .getEntranceUI();
        AggSalequotationHVO custVo=(AggSalequotationHVO) this.getModel().getSelectedData();*/
        //创建弹出框的对象
        SplitLineDialog dlg=new SplitLineDialog(this.getBillForm(),model);
        //初始化界面的数据
        dlg.initData(srow[0],bvo);   
        //展示界面
        dlg.showModal();  
    }
    
    
    public XSBJDbuttonAction(){
        this.setCode(btncode);
        this.setBtnName(btnname);
    }
    public SalequoModel getModel() {
        return model;
    }
    public void setModel(SalequoModel model) {
        this.model = model;
    }
    public SalequoBillForm getBillForm() {
        return billForm;
    }
    public void setBillForm(SalequoBillForm billForm) {
        this.billForm = billForm;
    }

}


按钮注册的xml

<?xml version="1.0" encoding="UTF-8"?>
<!-- 销售报价单的替代品-->
<!-- 配置卡片界面显示的按钮 actionsOfCard-->
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean class="nc.ui.pubapp.plugin.action.InsertActionInfo">
    <property name="actionContainer" ref="actionsOfCard" />
    <!--在何种状态下显示-->
    <property name="actionType" value="edit"/>
    <!--表示按钮在界面中的位置-->
    <property name="target" ref="linkQueryActionGroup"/>
    <property name="pos" value="after"/>
    <!--将按钮的Bean放入到按钮扩展类中-->
    <property name="action" ref="tidaiping"></property>
  </bean>  
    <!-- 按钮action的类的注册 class后面跟的是action的全路径-->
      <bean id="tidaiping" class="nc.ui.hsw.actions.XSBJDbuttonAction">
          <property name="billForm" ref="billFormEditor" />
        <property name="model" ref="manageAppModel" />
    </bean>

</beans>

按钮的注册
在功能注册的节点中选择需要添加按钮的节点,选择参数注册将你创建的XML全路径写在参数值当中。




  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值