Сообщество программистов Autodesk в СНГ

ADN Club => Inventor API => Тема начата: filat от 23-06-2016, 12:56:27

Название: Как фиелды могут быть связаны между собой?
Отправлено: filat от 23-06-2016, 12:56:27
Есть штамп чертежа с фиелдами.
Я для одного фиелда нужно кодом добавить подчеркивание:
Код - Visual Basic [Выбрать]
  1. Public Sub UndMate2()
  2.     Dim dDoc As DrawingDocument
  3.     Set dDoc = ThisApplication.ActiveDocument
  4.     Dim sSheet As Sheet
  5.     Set sSheet = dDoc.ActiveSheet
  6.     Dim sBoxs As TextBoxes
  7.     Dim sBox As TextBox
  8.     Set sBoxs = sSheet.TitleBlock.Definition.Sketch.TextBoxes
  9.     For Each sBox In sBoxs
  10.         If sBox.Text = "MATE2" Then
  11.             sBox.Style.Underline = True
  12.             Exit Sub
  13.         End If
  14.     Next
  15. End Sub
Операция происходит один раз, но подчеркивание появляется еще и у нескольких других фиелдов. Как это может быть? И как с этим бороться?
P.S. При добавлении подчеркивания вручную все проходит нормально.
Название: Re: Как фиелды могут быть связаны между собой?
Отправлено: mikazakov от 23-06-2016, 13:10:06
sBox.Style.Underline = True
Может ты программой редактируешь стиль на который текстбокс ссылается?
Вот и на выходе у тебя все текстбоксы которые к этому стили привязаны тоже изменяются.
Что бы кусок текста подчеркнуть нужно тэги добавлять, инфа об это есть в хэлпе
Название: Re: Как фиелды могут быть связаны между собой?
Отправлено: Алексей Романов от 23-06-2016, 15:09:09
Миша тут прав, попробуй так:
Код - Visual Basic [Выбрать]
  1. If sBox.Text = "MATE2" Then
  2.     sBox.FormattedText = "<StyleOverride Underline='True'>" & sBox.Text & "</StyleOverride>"
  3.     Exit Sub
  4. End If
Название: Re: Как фиелды могут быть связаны между собой?
Отправлено: filat от 01-07-2016, 09:21:12
"<StyleOverride Underline='True'>" & sBox.Text & "</StyleOverride>"
Это интересный подход, но применение в таком виде происходит стерание Value у фиелда и вместо него выводится имя фиелда.
Название: Re: Как фиелды могут быть связаны между собой?
Отправлено: mikazakov от 01-07-2016, 09:26:06
но применение в таком виде происходит стерание Value у фиелда и вместо него выводится имя фиелда.
ну филат может еще один чертежный стиль сделать для твоих текстбоксов?
Название: Re: Как фиелды могут быть связаны между собой?
Отправлено: filat от 01-07-2016, 10:08:54
но применение в таком виде происходит стерание Value у фиелда и вместо него выводится имя фиелда.
ну филат может еще один чертежный стиль сделать для твоих текстбоксов?
Пришлось, все таки так и сделать... - не хотелось количество стилей множить, но это точно работающий вариант.
Название: Re: Как фиелды могут быть связаны между собой?
Отправлено: Алексей Романов от 01-07-2016, 15:15:28
но применение в таком виде происходит стерание Value у фиелда и вместо него выводится имя фиелда.
Я думал сам догадаешься... Там, наверное, уже было форматирование и какое-нибудь свойство подвязано. Надо разбирать строку, отдельный стиль будет попроще...