创建类图

创建包含类图的 UML 风格模型。它们显示类、依赖关系、继承、关联、聚合和组合,以面向对象的方式可视化系统。

模型编辑器中的类图

模型编辑器中的类图。

创建类图

  1. 要在类图中添加 C++ 类,可将文件从Projects 拖到编辑器中,然后选择Add Class
  2. 除了常用元素属性外,您还可以指定以下属性:
    • Template 中,指定要使用的模板。
    • Template display 中,选择模板的显示格式:
      • Smart 根据类属性,以 或 显示模板。Box Angle brackets
      • Box 将模板显示在类图标右上角一个带虚线边框的小框中。
      • Angle brackets 使用 C++ 语法在类名后面的角括号中写入模板。
    • Members 中,为类指定成员,如指定成员中所述。
    • 选择Clean Up ,根据成员的可见性(私有、受保护、公用),并按照空白、换行等规则设置Members 的内容格式。
    • 选择Show members 可在图表中显示成员。

要从图表中的类导航到源代码,请双击编辑器中的类或在右键菜单中选择Show Definition

添加关系

类图中的元素可以有以下类型的关系:

  • 聚合
  • 关联
  • 组合
  • 依赖关系
  • 继承

关联关系的终点可以具有以下属性:

  • 卡性
  • 可导航
  • 角色
  • 关系

创建自关联

要创建自关联,首先创建一个新的关联,然后按下Shift键创建一个新的取样点,同时拖动关联。创建另一个取样点,然后将关联拖动到同一类别。

添加和删除点

要添加更多点,请选择Shift并选择一个关联。

要删除点,请选择Ctrl并选择一个点。

指定成员

要为类指定成员,请使用类似 C++ 的语法在单独一行中输入每个成员。例如,以下各行定义的方法m 是私有、虚拟和常量的:

private:
virtual int m(string a) const;

可以对成员进行分组:

[Geometry]
QPointF position;
QSizeF size;

可以为成员添加定型:

<<setter>> setPosition(const QPointF &pos);

解析器有一些限制:

  • 多行声明只有在行被包在嵌套的括号内时才起作用:
    void setSize(int width,
                 int height);
  • 不会翻译预处理器宏。可识别某些 Qt XML 关键字(如Q_SLOT )。
  • 函数指针声明被解释为方法。
  • throw() 和 参数不会被忽略,但会使声明成为方法。noexpect()

另请参阅 " 如何:创建模型和图表 "和 "模型编辑器"。

Copyright © The Qt Company Ltd. and other contributors. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.