千家信息网

EA画UML活动图中如何实现Object actions

发表于:2026-11-04 作者:千家信息网编辑
千家信息网最后更新 2026年11月04日,这篇文章主要介绍了EA画UML活动图中如何实现Object actions,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。背景假设有个简
千家信息网最后更新 2026年11月04日EA画UML活动图中如何实现Object actions

这篇文章主要介绍了EA画UML活动图中如何实现Object actions,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

背景

假设有个简单的图形编辑软件,由一个Shape基类派生出两个子类,分别是Rectangle类和Elipse类。既然是编辑软件当然就需要设定属性,于是软件为两种图形分别准备了RectanglePropertyDlg和ElipsePropertyDlg,它们都继承自PropertyDlg,类图如下:

示例

今天的例子就是为图像创建属性对话框的处理,我们将这部分处理交给PropertyDialogCoordinator,通过调用PropertyDialogCoordinator::proparePropertyDialog方法来实现。

proparePropertyDialog的主要功能有:

  1. 如果输入图形于上次处理时不同,则删除生成过的对话框,再根据输入图形的类型生成对应的属性对话框。

  2. 如果输入图形于上次处理时相同,则直接返回上次生成过的对话框而不重新创建。

处理流程如下:

希望你没有被吓到,这里分几块来说明。

首先执行的是AcceptCallAction(左边凹陷的五边形),该动作执行以后一共有三路输出:

  1. 红色部分。首先执行ReadSelfAction取得PropertyDialogCoordinator的实例以后以该实例为参数两次调用ReadStructrualFeatureAction,分别取得保持当前图形的currentShape和保持当前对话框的currentDlg以供后续处理使用。

  2. 粉色部分是数据流,为后续处理提供本处理的参数:创建属性对话框的输入图形。

  3. 蓝色部分也是数据流,为最后的ReplyAction提供输入信息。


上述的准备工作做好之后,使用TestIdentityAction判断参数图形和currentShape是否指向同一个对象:如果结果为true,说明该图形已经生成过属性对话框,则将currentDlg作为返回值传递给ReplyAction,处理结束;反之进入后续处理。


后续处理首先调用DestroyObjectAction销毁currentDlg对象,调用ReadIsClassifiedObjectAction判断输入图形的种类,并调用CreateObjectAction生成与之匹配的属性对话框。

接下来,WriteStructuralFeatureAction得以执行两次,分别将创建的属性对话框和输入图形分别保存到currentDlg和currentShape中。

最后执行ReplyAction,处理结束。

感谢你能够认真阅读完这篇文章,希望小编分享的"EA画UML活动图中如何实现Object actions"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!

处理 图形 对话框 对话 属性 输入 生成 篇文章 参数 软件 部分 图中 活动 实例 对象 数据 数据流 准备 不同 相同 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 广州淘业互联网络科技 新华互联网科技 中国互联网科技工作委员会毛军 广州凡科互联网科技 中正互联网科技招聘 广西拼得多互联网科技有限公司 互联网科技公司的市场部门 科技赋能互联网健康 北京三清互联网科技 互联网科技和信息 互联网科技研发水平 华中科技大学互联网的牛人 无锡工业互联网科技有限公司 合肥互联网科技公司公章图片 中国互联网公司的科技投入 亚光科技低轨卫星互联网 优雇互联网科技有限公司 广东猫王互联网科技有限公司电话 互联网科技创业有什么好项目 科技发展第三阶段互联网时代 互联网高科技 金融科技 互联网金融 远拓互联网科技 金融科技与互联网金融相同和不同 全球顶尖互联网科技公司 重庆互联网医院沙龙医盟信息科技 深圳艾果互联网通讯科技 美国互联网科技实力 互联网相关科技技术 北京品多多互联网科技有限公司
0