Diagram Studio是Delphi和C ++ Builder的一组组件,可轻松为您的应用程序添加功能丰富且用户友好的图表,流程图和图形功能。Diagram Studio提供了TatDiagram组件,这是一个类似于面板的控件,用户可以在其中通过插入块,线并将它们链接在一起来构建图。还提供了TDiagramToolBar组件,以使无需任何代码即可轻松,快速地编辑图组件。用户可以通过更改许多可用属性来定制图中的块。用户可以更改块,阴影,位图等形状。块可以旋转并调整大小。Diagram Studio提供了一个开放的体系结构,允许用户通过继承TCustomDiagramBlock类并使用RegisterDControl过程进行注册来构建自己的块。
功能特色
1、图表编辑行为类似于标准图表应用程序
2、支持剪贴板操作
3、块渐变,阴影和位图
4、图解导航器控件的完整概图
5、全块定制:笔,刷子,颜色,选择颜色,最小宽度和高度
6、块文本自定义:水平和垂直对齐,字体,自动换行,剪切
7、可定制链接块
8、原位文字编辑
9、全线(链接)自定义:笔,源箭头形状,目标箭头形状
10、弧线和贝塞尔线,多边形对象
11、支持块旋转(包括文本,位图,图元文件和渐变)
12、TDiagramToolBar组件,无需代码即可轻松进行图编辑
13、多个选择器组件(笔宽,笔样式,字体,阴影,渐变),可轻松编辑图表
14、设计时图编辑支持
15、图解网格
16、背景图(拉伸或平铺)
17、标尺
18、图表打印与预览
19、在文件和流中保存/加载图
20、放大/缩小图
21、潘宁
22、支持不同层次
23、在连接的块中支持节点支持,并通过节点折叠/扩展隐藏块
24、开放式体系结构,用于构建从基类继承的自定义块和行
25、Helper类TBlockDrawer,用于在自定义块上轻松自定义绘图
26、许多可用于特定图表操作的即用型TAction后代:剪贴板操作,对象删除和插入,缩放等。
使用帮助
1、快速入门-使用图表和工具栏组件
Diagram Studio中的主要组件是TatDiagram组件。 TatDiagram组件是可视控件,可保存并显示该图,并允许对其进行编辑。
另一个有用的组件是TDiagramToolBar。尽管TatDiagram组件不需要TDiagramToolBar组件才能工作,但是工具栏组件对于快速入门非常有用,因为它允许轻松插入程序框图,而无需一行代码。
对于Delphi 2005及更高版本,有一个名为TDiagramButtons的新组件。它具有与TDiagramToolbar相同的目的,但是它继承自TCategoryButtons并且具有更现代的外观。本主题末尾有一个新的TDiagramButtons的屏幕截图。
通过设置TDiagramToolBar组件的Diagram属性设置对TatDiagram组件的引用,将Diagram Studio入门快速放入窗体中的TatDiagram和TDiagramToolBar(或TDiagramButtons)组件,并将工具栏链接到图表即可。
有了此设置,并且没有任何代码行,您将拥有一个正在运行的应用程序,该应用程序已经提供了图表功能。只需从工具栏中选择一个对象,然后单击图以插入对象,即可开始编辑,调整大小,移动和删除对象。
TDiagramButtons组件为工具栏提供了更现代的外观:
2、图对象
图表对象有两种类型:块和线。所有块都属于TCustomDiagramBlock类,而所有行都属于TCustomDiagramLine块。TDiagramControl类是这两个类的祖先。
TD图控制
->TCustomDiagramLine
->TCustomDiagramBlock
1、基本对象
默认情况下,DiagramStudio提供了一些基本的块和线,它们都来自TCustomDiagramBlock和TCustomDiagramLine类。这些基本块和线是TDiagramToolBar组件中显示的块和线:
从左到右,基本对象是:
TDiagramBlock:基本图块。从TCustomDiagramBlock下降并发布其所有属性,因此此块是完整功能,允许设置颜色,阴影,渐变,图片,链接点,形状等。
TDiagramLineJoin:TCustomDiagramBlock后代,它只是一个链接点容器。您可以在此块上附加行(也可以在任何块上附加行,请参见“链接块”
TTextBlock:TCustomDiagramBlock的后代,将其自身设置为一些属性,使其看起来更像文本块(TDiagramBlock也提供文本功能,只要所有图对象都可以)。
TDiagramLine:TCustomDiagramLine的后代,它只是一条线(一个段)。
TDiagramSideLine:TCustomDiagramLine的后代,它是具有几个垂直线段的线。段数是自动计算的。
TDiagramPolyLine:TCustomDiagramLine的后代,它是具有多个段的线。最终用户绘制所需的细分。
TPolygonBlock:TCustomDiagramBlock的后代,它是具有多个边的多边形块。最终用户绘制所需的多边形边。
TDiagramArc:TCustomDiagramLine的后代,它是一条曲线。
TDiagramBezier:TCustomDiagramLine的后代,它像贝塞尔曲线。
2、多余的物体
DiagramStudio提供了额外的对象供图表使用。这些额外的对象可立即使用,也可作为示例,说明如何通过创建更多图表块来扩展DiagramStudio。DiagramStudio中的其他对象分为以下类别:
流程图块:提供流程图的一些基本块,例如动作,开始,结束,决策等。
电气块:为电气图表提供一些基本块,例如电阻器,电容器,电压源,地等。
箭头块:提供一些箭头形块。
在设计时可以使用所有其他对象。要使它们在运行时可用,只需将相应的单元包括在项目的任何单元的uses子句中。例如,如果要使用流程图块,请将FlowChartBlocks.pas单元包括在项目中。
3、流程图块
要在运行时使用流程图块,请将FlowchartBlocks.pas单元包含在Delphi项目中。提供以下块:
TFlowDecisionBlock
TFlowActionBlock
TFlowTerminalBlock
TFlowDataBlock
TFlowDocumentBlock
TFlowInputBlock
TFlowCommentBlock
TFlowListBlock
4、T数据库块
电动块
要在运行时使用电动块,请将ElectricBlocks.pas和ElectricBlocks2.pas单元包含在Delphi项目中。提供以下块:
在ElectricBlock.pas单元中:
晶体管块
T电容器块
TDiodeBlock
TLampBlock
在ElectricBlocks2.pas单元中:
TZenerDiodeBlock
T比较器块
电感块
TNonLinear电感块
TGroundBlock
TNPN晶体管块
TPNP晶体管块
TPTIGBT块
TNPTIGBT块
密码块
T晶闸管模块
TMosfetBlock
TSwitch块
TDuoCoilXFormBlock
TTriCoilXFormBlock
TDCVoltageSourceBlock
TDCCurrentSourceBlock
5、箭块
要在运行时使用箭头块,请将ArrowBlocks.pas单元包含在您的Delphi项目中。提供以下块:
TStandardArrowBlock
TDoubleArrowBlock
TQuadArrowBlock
TTripleArrowBlock
雪佛龙箭头块
TBlock单箭头块
TBlockDoubleArrowBlock
TCorner单箭头块
TCornerDoubleArrowBlock
更新日志
版本4.18(2019年7月)
·改进:TDiagramEditor.DialogMode允许将图编辑器窗口显示为非模式。
·修复:使用用户库中已有的自定义块打开图编辑器时发生内存泄漏。