ich versuche im Body (RT-Feld) einige Wörter farbig hervorzuheben.
funktioniert auch, wbeim erstenmal. Lasse ich den Code ein 2. mal über das Body-Feld, dann wird irgendetwas hervorgehoben und beim nächstenmal werden sogar teile gelöscht.
Mein Test-Eintrag:
Test Achtung Test
1. Lauf:
Test [color=FF0000]Achtung[/color] Test
2. Lauf:
[color=FF0000]Test Achtung[/color] Test
3. Lauf:
[color=FF0000]Test Ac[/color]
hier scheint genau nach dem Offset abgeschnitten zu werden.
Code
Sub Click(Source As Button)
Dim session As New NotesSession
Dim ws As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim doc As NotesDocument
Dim body As NotesRichTextItem
Dim rtnav As NotesRichTextNavigator
Dim rtrange As NotesRichTextRange
Set uidoc = ws.CurrentDocument
Set doc = uidoc.Document
Set body = doc.GetFirstItem("Body")
Set rtnav = body.CreateNavigator
Set rtrange = body.CreateRange
searchString$ = "Achtung"
Dim richStyle1 As NotesRichTextStyle
Set richStyle1 = session.CreateRichTextStyle
richStyle1.NotesFont = FONT_COURIER
richStyle1.Bold = True
richStyle1.NotesColor = COLOR_RED
If rtnav.FindFirstString(searchString$) Then
Call rtrange.SetBegin(rtnav)
Call rtnav.SetCharOffset(Len(searchString$))
Call rtrange.SetEnd(rtnav)
Call rtrange.SetStyle( richStyle1 )
End If
doc.Save True, True, True
End Sub
Alles anzeigen
Habt Ihr eine Ahnung warum sich dieses Script so verhällt?
Habe ich einen Denk-Fehler im Script?
Danke und Gruß
Dirk