我想绘制一个包含回调的序列图。Visio 2013 无法将我的箭头/消息转换为虚线返回消息。我该如何禁用此行为?
这是一个最小的例子。所有消息都作为消息插入,其中两个被转换为返回消息,但只有一个正确。选择错误的箭头并将其更改为非虚线样式没有效果。
答案1
问题在于,UML 序列模具内的默认消息形状具有特殊的用户定义值,如果它们从右向左移动,则会将它们转换为返回消息。
一个优雅的解决方案是右键单击“UML 序列”模板并选择另存为。将其命名为“UML 序列固定”。打开新创建的模板。转到文件->选项->高级->常规并检查以开发者模式运行。
现在右键单击消息形状并选择编辑主控->编辑主控形状(您可能需要右键单击列表中的模板标题,然后选择“编辑模板”。现在单击在新拆分中打开的箭头图像以将其选中。在功能区中,转到开发人员菜单,单击显示 ShapeSheet->形状在用户定义的单元格中,你会发现一个名为用户.IsReturn(其值为 EndX<BeginX)。将其更改为0. 关闭打开的分割(visio 会询问您是否保存形状,您应该选择是的)。
现在对异步消息和返回消息执行相同的操作(除了选择1返回消息的情况下的值)。
使用新的模板,您将能够创建从左到右和从右到左的消息。
答案2
如果图表较小,可以尝试在 PowerPoint 中创建。遗憾的是,我发现那里的图表工具更易于使用,并且创建的效果更好。