日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

UAP扩展开发 - 新增按钮

發布時間:2023/12/14 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 UAP扩展开发 - 新增按钮 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

UAP新增按鈕的實現

一、擴展說明

1.按鈕擴展的實現有兩種方法

- 按鈕繼承:NCAction,MenuAction

- 攔截器實現:ActionInterceptor

此處是通過按鈕繼承實現的

2.UAP擴展開發新增按鈕一般就三步

- 功能注冊找到對應的節點查看全局配置xml文件

- 新建action類,擴展xml文件

- 注冊配置文件到功能注冊節點下


此處以銷售訂單維護為例,效果如下



3.節點查找路徑

- 功能注冊節點

:動態建模平臺 -> 開發配置 -> 功能管理 -> 功能注冊?

- 銷售訂單維護節點

:供應鏈 -> 銷售管理 -> 銷售訂單 -> 銷售訂單維護

二、按鈕實現

第一步 - 功能節點查看

1.新建UAP項目

新建銷售po模塊的UAP項目,新建組件命名自定義;

選中項目右鍵啟動中間件服務;

本次擴展添加的按鈕是銷售訂單維護節點下的。

進入功能注冊找到采購訂單維護節點



看到'B'部分參數注冊內層紅框就是當前節點的xml配置文件,這個后面要用到;

第二步 - 按鈕類及配置文件實現

1.創建action類及xml擴展文件

在新建的項目中client下新建action類及xml配置文件;

命名最好規范化可以參考標準產品相似功能節點的命名

結構如下:


action類就是按鈕對應的java類,該類繼承NCAction,覆蓋doAction()方法,按鈕的響應后的邏輯操作可在此方法中編寫;

xml文件就是擴展按鈕的配置文件。

2.文件代碼

AddTestAction.java

package nc.ui.extend.pubapp.action;import java.awt.event.ActionEvent;import nc.ui.pub.beans.MessageDialog; import nc.ui.uif2.NCAction; import nc.ui.uif2.UIState; import nc.ui.uif2.editor.BillForm; import nc.ui.uif2.model.AbstractAppModel;public class AddTestAction extends NCAction { public AddTestAction() {super.setBtnName("按鈕");super.setCode("code");}private static final long serialVersionUID = -4417976703049420324L; private BillForm editor; private AbstractAppModel model; @Override public void doAction(ActionEvent e) throws Exception {MessageDialog.showHintDlg(editor, " 提示 ", " 測試自己新按鈕按下 ");}public BillForm getEditor() {return this.editor; }public AbstractAppModel getModel() {return this.model; }public void setEditor(BillForm editor) {this.editor = editor; }public void setModel(AbstractAppModel model) {this.model = model;model.addAppEventListener(this);}@Overrideprotected boolean isActionEnable() {return this.model.getUiState() == UIState.NOT_EDIT;} }
pubapp_ext_config.xml

<?xml version="1.0" encoding="GBK"?> <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="action" ref ="AddTestAction" /><!-- 這是插入按鈕的目標位置配置 addMenuGroup即為查找的目標按鈕 在其后插入測試按鈕--><property name="target" ref="addMenuGroup" /><property name="pos" value="before" /><property name="actionContainer" ref="actionsOfList" /><!-- 卡片,列表 --><property name="actionType" value="notedit" /><!-- notedit 或 edit --></bean><bean class="nc.ui.pubapp.plugin.action.InsertActionInfo"><property name="action" ref ="AddTestAction" /><property name="target" ref="addMenuGroup" /><!-- 目標按鈕 --><property name="pos" value="before" /><!-- 位置 --><property name="actionContainer" ref="actionsOfCard" /><!-- 卡片,列表 --><property name="actionType" value="notedit" /><!-- notedit 或 edit --></bean><bean id="AddTestAction" class="nc.ui.extend.pubapp.action.AddTestAction"><property name="model" ref="manageAppModel" /><property name="editor" ref="billFormEditor" /></bean></beans>

3.xml配置中的參數說明

<bean class="nc.ui.pubapp.plugin.action.InsertActionInfo"> 標識了擴展新增按鈕 < bean class="nc.ui.pubapp.plugin.action.ReplaceActionInfo">替換按鈕配置 <bean class=" nc.ui.uif2.uiextend.ActionExtInfo">刪除按鈕配置 <property name="target" ref="addMenuGroup" /> <property name="pos" value="before" />新增按鈕AddTestAction在按鈕addMenuGroup的前面 <bean id="AddTestAction" class="nc.ui.extend.pubapp.action.AddTestAction"> <property name="model" ref="manageAppModel" /> <property name="editor" ref="billFormEditor" /> </bean> id就是作為一個按鈕在xml配置文件中的標識, class是按鈕對應的的Java類 model是銷售訂單維護節點的xml配置文件中注冊的AppModel editor也是在該節點的xml配置文件中;

以上model,editor,目標按鈕都是在xml配置中找;這個xml就是上面功能節點銷售訂單維護下的參數注冊中的saleorder_config.xml配置文件;

找源碼有個快捷鍵Ctrl+Shift+T,會彈出輸入框,輸入查找的文件名點擊確認即可;


打開文件后,可以找到actions,選一個作為目標按鈕即可;


關于model可以去查或者按照已有的action跟它配置的model,editor保持一致即可;



第三步 - 配置文件注冊

1.注冊配置文件到功能節點

就是把xml的全路徑配置到銷售訂單維護節點下的參數注冊中;

注意參數的命名有一定的規范,一般PluginBeanConfigFilePath加下劃線后跟01,02這樣;



到此完成新增按鈕;到供應鏈的銷售訂單維護打開,此時按鈕已被添加成功。


另:如果是二級按鈕,或者按鈕組;注意選擇目標按鈕后,將<property name="actionType" value="notedit" />中的notedit換成edit即可。

總結

以上是生活随笔為你收集整理的UAP扩展开发 - 新增按钮的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。