I am trying to write a macro to generate balloons with a single letter in them.
I'm having no luck getting the UpperText property to set.
I've tried setting it in the BalloonOptions object, prior to calling the InsertBomBalloon method and I've tried setting it after creating the balloon, using the SetBomBalloonText method.
No matter what I do, the text is always just a question mark.
The other problem I am having, is that the balloon is created with a leader. I don't want a leader. I just want a leaderless balloon.
I'm not sure where to set this option; I don't see any type of leader property listed in the class members for INote or IBalloonOptions objects in the documentation.
Hoping someone else knows this. I'm sure this exists somewhere, but I'm just not finding it.
Here is where I'm at right now.
Like I mentioned, I've also tried setting it in the balloon options prior to creation and I was still getting a question mark. That's actually why I broke it out into separate create and modify operations. I would prefer to keep it one operation if possible - just set the text at creation and not have to modify it.
SolidworksApi macrosOption Explicit
Dim swApp As SldWorks.SldWorks
Dim Part As SldWorks.ModelDoc2
Sub mainedit()
Dim myNote As SldWorks.Note
Dim myBalOpt As SldWorks.BalloonOptions
Dim myDocExt As SldWorks.ModelDocExtension
Dim strLetter As String
Dim blnRet As Boolean
Set swApp = Application.SldWorks
Set Part = swApp.ActiveDoc
Set myBalOpt = Part.Extension.CreateBalloonOptions()
strLetter = "A"
With myBalOpt
.Style = swBS_Circular
.Size = swBF_2Chars
.UpperTextContent = swBalloonTextCustom
.UpperText = """" 'have tried setting this to strLetter and even explicitly setting to "A", still gives me a question mark in balloon
.LowerTextContent = swBalloonTextCustom
.LowerText = """"
End With
Set myNote = Part.Extension.InsertBOMBalloon2(myBalOpt)
blnRet = myNote.SetBomBalloonText(myBalOpt.UpperTextContent, strLetter, myBalOpt.LowerTextContent, """")
End Sub