Поделиться через


Метод GraphicItem.SetExpression (Visio)

Задает значение строки выражения, которая является частью правила объекта GraphicItem , по которому вычисляются данные фигуры (пользовательские свойства).

Примечание.

Этот объект или элемент Visio доступен только лицензированным пользователям Visio профессиональный 2013.

Синтаксис

выражение. SetExpression( _Field_ , _Expression_ )

Выражение Выражение, возвращающее объект GraphicItem .

Параметры

Имя Обязательный или необязательный Тип данных Описание
Field Обязательный VisGraphicField Метка или формула основного поля данных (столбца), назначенного объекту GraphicItem. Возможные значения см. в разделе Примечания.
Expression Обязательный String Выражение таблицы фигур, связанное с параметром Field.

Возвращаемое значение

Отсутствует

Примечания

Параметр Field должен быть одним из следующих значений перечисления VisGraphicField , объявленного в библиотеке типов Microsoft Visio.

Константа Значение Описание
visGraphicPropertyLabel 1 Метка элемента данных фигуры.
выражение visGraphicExpression 2 Формула таблицы фигуры элемента данных фигуры.

При передаче методу SetExpression метки элемента фигурных данных (то есть при передаче visGraphicPropertyLabel для параметра Field) необходимо заключить метку в фигурные скобки ({}). Например, если вы хотите передать имя элемента данных фигуры Cost, необходимо написать его следующим образом: {Cost}.

Составьте ссылку на данные фигуры, отличной от той, к которой применяется рисунок данных, передав имя фигуры, за которой следует восклицательный знак (!), а затем имя поля. Например, в приведенном ниже примере для ссылки на ширину фигуры с именем Ellipse.34 можно использовать следующий синтаксис:

vsoGraphicItem.SetExpression visGraphicExpression, "Ellipse.34!Width"

Перед редактированием графического элемента, в том числе заданием его строки выражения, необходимо использовать метод Master.Open , чтобы открыть для редактирования копию образца графических данных, к коллекции GraphicItems которого принадлежит графический элемент. После установки выражения графического элемента и внесения других изменений используйте метод Master.Close для фиксации изменений.

Пример

В следующем макросе Microsoft Visual Basic для приложений (VBA) показано, как использовать метод SetExpression для задания значения строки выражения для графического элемента данных. Он открывает копию главного объекта типа visTypeDataGraphic (обычно называемого рисунком данных) с именем "Графический объект данных", а затем задает выражение первого графического элемента в коллекции GraphicItems графического рисунка данных для отображения ширины любой фигуры, к которой применяется рисунок данных.

Примечание.

Имя существующего графического образца данных можно определить, наведите указатель мыши на него в области задач Графика данных в пользовательском интерфейсе Visio.

Затем он закрывает главный элемент и использует метод GetExpression , чтобы получить последнее примененное выражение для графического элемента. Наконец, он выводит тип поля и значение выражения в окне Интерпретация.

Макрос предполагает, что в текущем документе существует рисунок данных с именем Data Graphic. Дополнительные сведения о добавлении образца графических данных в коллекцию Master текущего документа см. в разделе Masters.AddEx.

Public Sub SetExpression_Example() 
 
    Dim vsoMaster As Visio.Master 
    Dim vsoMasterCopy As Visio.Master 
    Dim vsoGraphicItem As Visio.GraphicItem 
    Dim strExpression As String 
    Dim fieldType As VisGraphicField 
 
    Set vsoMaster = Visio.ActiveDocument.Masters("Data Graphic") 
    Set vsoMasterCopy = vsoMaster.Open 
    Set vsoGraphicItem = vsoMasterCopy.GraphicItems(1) 
       
    vsoGraphicItem.SetExpression visGraphicExpression, "Width" 
    vsoMasterCopy.Close 
     
    vsoMaster.GraphicItems(1).GetExpression fieldType, strExpression 
     
    Debug.Print "Field type is "; fieldType 
    Debug.Print "Expression is "; strExpression 
     
End Sub

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.