Форум пользователей Visio
http://visio.getbb.ru/

Выделение линией аля Autocad
http://visio.getbb.ru/viewtopic.php?f=15&t=747
Страница 1 из 1

Автор:  Shishok [ 03 мар 2015, 04:13 ]
Заголовок сообщения:  Выделение линией аля Autocad

Еще один способ выделения на листе. Линией и не только.
У нас уже представлен один способ, здесь (http://visio.getbb.ru/viewtopic.php?f=15&t=671&st=0&sk=t&sd=a)
Вот еще подобное:

Изображение

Код (Одноразовое выделение для линии. Чтобы было как на картинке - раскомментировать/закомментировать нужные строки)
Запускать процедуру Start_SelectByLine
Код:
Option Explicit

Dim tmpS As Boolean

Sub Start_SelectByLine()
    Application.DoCmd (1221) 'Включение инструмента Линия
    tmpS = True
End Sub
   
'Sub Stop_SelectByLine()' Раскомментировать для отключения (при многоразовой операции)
'    tmpS = False
'    Application.DoCmd (1907) ' Включение Обычного выделения
'End Sub

Private Sub Document_ShapeAdded(ByVal Shape As IVShape)

If tmpS Then
    Dim Sel As Visio.Selection
        Set Sel = Shape.SpatialNeighbors(visSpatialContain + visSpatialOverlap + visSpatialTouching, 0, 0) 'определение пересечений временной линии
            ActiveWindow.Selection = Sel
            Shape.Delete 'удаление временного шейпа
            Application.DoCmd (1907) ' Закомментировать для многоразового действия
            tmpS = False ' Закомментировать для многоразового действия
End If
   
End Sub
' Код поместить в модуль документа.


Вложения:
SelectByLine.vsd [53.5 Кб]
Скачиваний: 260

Страница 1 из 1 Часовой пояс: UTC + 3 часа [ Летнее время ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/