云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > NC单据开发初学手册V1.0

NC单据开发初学手册V1.0

  • 62 次阅读
  • 3 次下载
  • 2025/5/1 23:21:55

m_CardPanel.getCard().addTabbedPaneTabChangeListener(editCtrl, 1); }

m_CardPanel.getCard().addEditListener(\页签afterEdit()加监听 m_CardPanel.getCard().addEditListener(\ m_CardPanel.getCard().addEditListener(\

第四步、编写返回BillCardPanel(UAP封装的卡片容器)的方法,用来在UI类(ClientUI)或者按钮处理类(ButtonEventHandler)调用。

第五步、按业务需要,可以将方便与卡片处理的相关方法写在这里。

8.4.2.3 按钮控制类(ButtonCtrl)

按钮控制类的作用,是进行 初始化按钮 和 按钮状态控制的

第一步、在UI包里创建ButtonCtrl类

第二步、在ButtonCtrl类中添加一个构造方法,参数为UI类。 第三步、在ButtonCtrl类的初始化方法中,new 一个ButtonTree对象

ButtonTree的对象构造的时候实际上就是在sm_butnregister这个表中按照构造中的节点号,来查询这个节点下的所有注册的按钮,并将按钮放入界面上。

第四步、在初始化方法中,将我们构造的ButtonObject 用ButtonTree类中的.getButton(String funcode)的这种方式获得实例。

第五步、编写setButtonStatus() 方法。根据不同的界面编辑状态,来用ButtonObject的setEnabled(boolean bl)方法来控制按钮是否可以编辑。

第六步、在初始化方法中调用setButtonStatus()设置初始的按钮状态,之后调用ClientUI中updateButtons()方法来将按钮状态等按钮属性 刷新到界面上。

m_ClientUI.updateButtons();

具体代码可以参照nc.ui.zjs.train.ButtonCtrl类来编写。

8.5 步骤五、定制界面UI类

第一步、在nc.ui.zjs.train包中建立ClientUI类,继承自ToftPanel类 public class ClientUI extends ToftPanel{

- 40 -

//…… }

第二步、在初始化方法中,做以下处理。

1、设置常量类,将节点信息,客户端登陆信息维护进去

2、初始化卡片界面,列表界面,卡片界面的控制器,列表界面控制器 3、初始化前台缓存

4、初始化按钮,初始化按钮的事件处理类。 public void initialize() {

}

// 初始化卡片界面和模板

CardPanel m_cardPanel = new CardPanel(this); // 初始化卡片控制器(添加监听和卡片相关控制都在此类处理) m_cardCtrl = new CardPanelCtrl(this, m_cardPanel); // 初始化列表

ListPanel m_listPanel = new ListPanel(this); // 初始化列表控制器

m_listCtrl = new ListPanelCtrl(this, m_listPanel); // 初始化前台缓存

m_Model = new Model(); // 初始化按钮 initButtons();

// 设置布局

setLayout(new CardLayout()); // 初始化节点信息和客户端常量 initNodeInfo();

这样,就完成了UI类

8.6 步骤六、定制按钮事件处理类

7.6.1 编写ButtonEventHandler的步骤

处理按钮和事件的类ButtonEventHandler是我们单据比较核心的地方,大部分的业务逻辑都是根据按

- 41 -

钮驱动开始的。所以我们单独把按钮事件处理的类单独出来。

ButtonEventHandler的构造也是需要一个ClientUI的参数,来保证和UI类关联,之后根据ButtonCtrl类来判断我们点击的是哪个按钮,之后来做具体的按钮点击后处理。

public ButtonEventHandler(ClientUI clientUI) {

private ButtonCtrl getButtonCtrl() { }

public void onButtonClick(ButtonObject bo) throws Exception {

if (bo == getButtonCtrl().m_boAdd) {

onAdd();

return m_ClientUI.getButtonCtrl(); }

m_ClientUI = clientUI;

} else if (bo == getButtonCtrl().m_boDel) {

onDel();

} else if (bo == getButtonCtrl().m_boMod) {

onMod();

} else if (bo == getButtonCtrl().m_boSave) {

onSave();

} else if (bo == getButtonCtrl().m_boCancel) {

onCancel();

} else if (bo == getButtonCtrl().m_boAddLine) {

onAddLine();

} else if (bo == getButtonCtrl().m_boDelLine) {

getCard().delLine();

} else if (bo == getButtonCtrl().m_boCopyLine) {

// 复制行 onCopyLine();

} else if (bo == getButtonCtrl().m_boPasteLine) {

// 粘贴行 onPasteLine();

} else if (bo == getButtonCtrl().m_boPasteLastLine) {

// 粘贴到最后一行

- 42 -

onPasteLastLine();

} else if (bo == getButtonCtrl().m_boQuery) {

onQuery();

} else if (bo == getButtonCtrl().m_boPrintPriview) {

onPrintPreview();

} else if (bo == getButtonCtrl().m_boPrint) {

onPrint();

} else if (bo == getButtonCtrl().m_boRefresh) {

onRefresh();

} else if (bo == getButtonCtrl().m_boFind) {

onFind();

} else if (bo == getButtonCtrl().m_boSwitch) {

onSwitch();

} else if (bo == getButtonCtrl().m_boFirstPage) {

// 首页 onFirst();

} else if (bo == getButtonCtrl().m_boPreviousPage) {

// 上页

onPrevious();

} else if (bo == getButtonCtrl().m_boNextPage) {

// 下页 onNext();

} else if (bo == getButtonCtrl().m_boLastPage) {

// 末页 onLast();

} else if (bo == getButtonCtrl().m_boSelectAll) {

// 全选

onBoSelectAll();

} else if (bo == getButtonCtrl().m_boCancelAll) {

// 全消

onBoCancelAll();

} else { }

SCMEnv.error(\);

- 43 -

搜索更多关于: NC单据开发初学手册V1.0 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

m_CardPanel.getCard().addTabbedPaneTabChangeListener(editCtrl, 1); } m_CardPanel.getCard().addEditListener(\页签afterEdit()加监听 m_CardPanel.getCard().addEditListener(\ m_CardPanel.getCard().addEditListener(\第四步、编写返回BillCardPanel(UAP封装的卡片容器)的方法,用来在UI类(ClientUI)或者按钮处理类(ButtonEventHandler)调用。 第五步、按业务需要,可以将方便与卡片处理的相关方法写在这里。 8.4.2.3 按钮

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com