Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Выделение или снятие выделения объекта.
Синтаксис
выражение. Select (SheetObject, SelectAction)
выражение Переменная, представляющая объект выделения .
Параметры
| Имя | Обязательный или необязательный | Тип данных | Описание |
|---|---|---|---|
| Объект листа | Обязательный | [IVSHAPE] | Выражение, возвращающее объект Shape для выделения или отмены. |
| Действие SelectAction | Обязательный | Integer | Тип выбранного действия. |
Возвращаемое значение
Отсутствует
Примечания
При использовании с объектом Window метод Select повлияет на выделение в окне Microsoft Visio. Объект Selection , однако, не зависит от выделения в окне. Следовательно, использование метода Select с объектом Selection влияет только на состояние объекта в памяти; окно Visio остается неизменным.
Следующие константы, объявленные библиотекой типов Visio в VisSelectArgs , показывают допустимые значения для типов выборки.
| Константа | Значение | Описание |
|---|---|---|
| visDeselect | 1 | Отмена выделения фигуры, но остальная часть выделения остается без изменений. |
| visSelect | 2 | Выделение фигуры с сохранением остальных параметров выделения. |
| visSubSelect | 3 | Выделение фигуры, родительский элемент которой уже выбран. |
| visSelectAll | 4 | Выделение фигуры и всех ее элементов. |
| visDeselectAll | 256 | Отменяет выделение фигуры и всех ее одноранговых элементов. |
Если SelectAction имеет значение visSubSelect, то родительская фигура SheetObject должна быть уже выбрана.
Вы можете объединить команды visDeselectAll с visSelect и visSubSelect , чтобы отменить выделение всех фигур перед выделением или выделением других фигур.
Если объект, над которым выполняется операция, является объектом Selection и если метод Select выбирает объект Shape , свойство ContainingShape которого отличается от свойства ContainingShape объекта Selection , метод Select очищает все, даже если в значении типа выбора не указана отмена выбора.
Если объект, над которым выполняется операция, является объектом Window и если SelectAction не является visSubSelect, родительская фигура объекта SheetObject должна быть той же формой, что и та, которую возвращает свойство ContainingShape объекта Window.Selection .
Пример
В этом макросе Microsoft Visual Basic для приложений (VBA) показано, как выделять, удалять и выделять фигуры.
Public Sub Select_Example()
Const MAX_SHAPES = 6
Dim vsoShapes(1 To MAX_SHAPES) As Visio.Shape
Dim intCounter As Integer
'Draw six rectangles.
For intCounter = 1 To MAX_SHAPES
Set vsoShapes(intCounter) = ActivePage.DrawRectangle(intCounter, intCounter + 1, intCounter + 1, intCounter)
Next intCounter
'Cancel the selection of all the shapes on the page.
ActiveWindow.DeselectAll
'Create a Selection object.
Dim vsoSelection As Visio.Selection
Set vsoSelection = ActiveWindow.Selection
'Select the first three shapes on the page.
For intCounter = 1 To 3
vsoSelection.Select vsoShapes(intCounter), visSelect
Next intCounter
'Group the selected shapes.
'Although the first three shapes are now grouped, the
'array vsoShapes() still contains them.
Dim vsoGroup As Visio.Shape
Set vsoGroup = vsoSelection.Group
'There are now four shapes on the page - a group that contains three
'subshapes, and three ungrouped shapes. Subselection is
'accomplished by selecting the parent shape first or one of the
'group's shapes already subselected.
'Select parent (group) shape.
ActiveWindow.Select vsoGroup, visDeselectAll + visSelect
'Subselect two of the shapes in the group.
ActiveWindow.Select vsoShapes(1), visSubSelect
ActiveWindow.Select vsoShapes(3), visSubSelect
'At this point two shapes are subselected, but we want to
'start a new selection that includes the last two shapes
'added to the page and the group.
'Note that the subselections that were made in the group
'are canceled by selecting another shape that is
'at the same level as the parent of the subselected shapes.
'Select just one shape.
ActiveWindow.Select vsoShapes(MAX_SHAPES), _
visDeselectAll + visSelect
'Select another shape.
ActiveWindow.Select vsoShapes(MAX_SHAPES - 1), visSelect
'Select the group.
ActiveWindow.Select vsoGroup, visSelect
'Select all but one shape on the page.
ActiveWindow.SelectAll
ActiveWindow.Select vsoShapes(MAX_SHAPES - 1), visDeselect
End Sub
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.