使用VB代码在Visio中连接两个图形
原始版本
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim filePath1 As String = "C:\Users\XUST\Desktop\sample.vsdx"
Dim filePath2 As String = "C:\Users\XUST\Desktop\sample-save.vsdx"
Dim visioApp As Visio.Application
visioApp = New Visio.Application
'Dim doc As Visio.Document = visioApp.Documents.Add("")
visioApp.Visible = False
Dim filePath3 As String = "C:\Users\XUST\Desktop\3334455.vsdx"
Dim doc = visioApp.Documents.Open(filePath3)
'原文件中创建一个连接线,在00位置,由于源文件中最后一个图形ID为8,所以下面这句话创建的图像id为9
visioApp.ActiveWindow.Page.Drop(doc.Masters.ItemU("Dynamic connector"), 0#, 0#)
Dim vsoCell1 As Visio.Cell
Dim vsoCell2 As Visio.Cell
'设置id为9的链接线的起始位置位于id为1的元素的720位置
vsoCell1 = visioApp.ActiveWindow.Page.Shapes.ItemFromID(9).CellsU("BeginX")
vsoCell2 = visioApp.ActiveWindow.Page.Shapes.ItemFromID(1).CellsSRC(7, 2, 0)
vsoCell1.GlueTo(vsoCell2)
vsoCell1 = visioApp.ActiveWindow.Page.Shapes.ItemFromID(9).CellsU("EndX")
vsoCell2 = visioApp.ActiveWindow.Page.Shapes.ItemFromID(7).CellsSRC(7, 0, 0)
vsoCell1.GlueTo(vsoCell2)
doc.SaveAs("C:\Users\XUST\Desktop\4455.vsdx")
visioApp.Quit()
End Sub

浙公网安备 33010602011771号