Тема: Ввод текста в окно формы после щелчка мыши

Подскажите как присвоить имени переменной значение однострочной строки или ввести это значение в текстовое окно формы (или BsgBox)после щелчка ЛК мыши на тектовом объекте чертежа, т.е.таким же образом как можно получить координату точки.

Re: Ввод текста в окно формы после щелчка мыши

Посмотри код в соседней ветке https://www.caduser.ru/forum/topic23515.html там есть кусочек, нужный тебе. Вот я его специально выделил:

Public Sub FindAnswer()
  Dim txt As String
  Dim rnge, excapp, excsht
  ActiveDocument.ActiveSelectionSet.Clear
  ActiveDocument.ActiveSelectionSet.SelectOnScreen
  If ActiveDocument.ActiveSelectionSet.Item(0).ObjectName <> [b]"AcDbText"[/b] Then
    MsgBox "Выбран не текст! Выбран " & ActiveDocument.ActiveSelectionSet.Item(0).ObjectName
  Else
    [b]txt = ActiveDocument.ActiveSelectionSet.Item(0).TextString[/b]
    Set excapp = GetObject(, "Excel.Application")
    Set excsht = excapp.ActiveSheet
    Set rnge = excsht.Columns(1).Find(txt)
    If rnge Is Nothing Then
      MsgBox "Текст не найден в таблице"
    Else
      MsgBox excsht.Cells(rnge.Row, 6).Value
      Set rnge = Nothing
    End If
    Set excapp = Nothing
    Set excsht = Nothing
  End If
  ActiveDocument.ActiveSelectionSet.Clear
End Sub

Как видишь, у меня проверка на соответствие типа примитива типу "AcDbText". Это однострочный текст. Если тебе нужен и многострочный тоже, добавь соответствующий код для типа "AcDbMText". Только в свойстве TextString многострочного текста могут содержаться, помимо полезного текста, всякие символы форматирования (используемый шрифт и т.п.), придётся их как-то убирать программно.
Неудобство в том, что методом SelectOnScreen надо щёлкать дважды - один раз левой кнопкой на тексте, затем правой, чтобы закончить выбор объектов. Я создал ещё одну ветку https://www.caduser.ru/forum/topic23533.html , чтобы узнать, можно ли в бейсике щёлкать только один раз (левой), как в Лиспе (там есть ф-ия entsel).

Re: Ввод текста в окно формы после щелчка мыши

ThisDrawing.Utility.GetEntity

Re: Ввод текста в окно формы после щелчка мыши

Maxim T
Больщее спосибо!. Неделю рылся в helpe. Моя программа берет координаты с листа и чертит план линии (spline). Нужно было взять угол и не один (напр 12град45мин14сек), т.е. вводить эти градусы и минуты было очень неудобно.Теперь все OK. Еще раз большее спасибо. С Новым годом!