您的位置:首页 > 产品设计 > UI/UE

EA&UML日拱一卒--序列图(Sequence Diagram)::生命周期

2017-05-04 20:10 253 查看
在实际的程序中,创建对象,删除对象这样的控制对象生命周期的处理可以说比比皆是。

创建对象

下面以图形编辑软件中用户双击鼠标创建新对象为例说明。



处理流程:

用户双击鼠标。

Framework生成QMouseEvent并发送给DrawerView

DrawerView从MouseEvent中取得鼠标位置

调用当前形状的clone方法

在clone方法中创建新的图形。

将鼠标位置设定为新图形的位置

将新图形登录到DrawerData中

画法

打开clone方法中创建新图形的消息的属性对话框,选择【Leftcycle】为【New】,虽然不是必须,但是为了明确表达设计者的目的,可以同时设定【Sterotype】选项为【create】。



删除对象

接下来以图形编辑软件中用户按下Delete键删除当前对象为例说明。



处理流程

用户按下Delte键

Framework将生成QKeyEvent并发送给DrawView

DrawView从DrawerData移除m_currentShape

删除m_currentShape对象

将m_currentShape置为空指针

画法

打开删除图形消息的属性对话框,选择【Leftcycle】为【Delete】,虽然不是必须,但是为了明确表达设计者的目的,可以同时设定【Sterotype】选项为【destroy】。



QtDrawer现状

由于类图和时序图是联动的,我们在完成上述时序图的同时,类图变成了下面的样子。



如果阅读本文能给您带来些许收获,欢迎分享给更多的朋友!

阅读更多新文章,请扫描下面二维码,关注公众号【面向对象思考】

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息