Window.DockedStencils 方法 (Visio)

返回停靠在 Microsoft Visio 绘图窗口中的所有模具的名称。

语法

expressionDockedStencils( _NameArray()_ )

表达 一个代表 Window 对象的变量。

参数

名称 必需/可选 数据类型 说明
NameArray () 必需 字符串 输出参数。 用于接收停靠在窗口中的模具的名称的数组。

返回值

Nothing

注解

DockedStencils 方法返回字符串数组,即窗口中停靠的模具窗格中显示的模具的名称。 当窗口是绘图窗口时, ( n ) 的固定模具窗格数等于或大于零,当窗口不是绘图窗口时, n 为零。

如果 DockedStencils 方法成功, 则 NameArray () 将返回一维 数组,其中包含 从零 (0) 到 n - 1 的 n 个字符串。 NameArray () 参数是由 DockedStencils 方法分配的 out 参数,其所有权将传回调用方。 最后,调用方应对返回的数组执行 SafeArrayDestroy 过程。 请注意, SafeArrayDestroy 过程具有释放数组条目引用的字符串的副作用。 如果 NameArray () 为 null,则 DockedStencils 方法将失败。 (Microsoft Visual Basic 和 Visual Basic for Applications负责销毁数组。)

如果 strStencilName 是由 NameArray (StencilName) 返回的 字符串, 则 Documents.Item ( strStencilName) 成功并返回一个代表模具的 Document 对象。

示例

下面的 Microsoft Visual Basic for Applications 宏说明如何使用 DockedStencils 方法获取停靠在活动窗口中的所有模具的文档名称。 此外,还将在“立即”窗口中输出活动文档的名称以及保存模具名称的数组的下界和上界,然后还会在“立即”窗口中列出模具名称和路径。

 
Public Sub DockedStencils_Example() 
 
 Dim astrStencilNames() As String 
 ActiveWindow.DockedStencils astrStencilNames 
 
 Dim intLowerBound As Integer 
 Dim intUpperBound As Integer 
 Dim intIndex As Integer 
 
 intLowerBound = LBound(astrStencilNames) 
 intUpperBound = UBound(astrStencilNames) 
 Debug.Print "Active document: " ActiveWindow.Document; " Lower bound:"; intLowerBound; " Upper Bound:"; intUpperBound 
 
 intIndex = intLowerBound 
 While intIndex <= intUpperBound 
 Debug.Print astrStencilNames(intIndex) 
 intIndex = intIndex + 1 
 Wend 
 
End Sub

支持和反馈

有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。