Hallo,
ich kämpfe gerade mit einem RT-Feld, das sich standhaft weigert für den ersten Wert einen richtextstyle anzunehmen.
Set dummyrt = doc.Getfirstitem("licabgl_differenz")
Set swview2 = db.GetView("Software")
For i = 0 To (UBound(swliste)-1)
Set swcoll = swview2.GetAllDocumentsByKey(swliste(i))
str_swliste = str_swliste & CStr(swliste(i)) & Chr(13)
str_installationen = str_installationen & CStr(swcoll.Count) & Chr(13)
str_lizenzen = str_lizenzen & CStr(dummylic) & Chr(13)
str_differenz = str_differenz & CStr((dummylic - swcoll.Count)) & Chr(13)
If ((dummylic-swcoll.count) <0) Then
richStyle.NotesColor = COLOR_RED
Else
richStyle.NotesColor = COLOR_BLACK
End If
Call dummyrt.AppendStyle(richStyle)
Call dummyrt.AppendText(CStr(dummylic-swcoll.Count))
Call dummyrt.AddNewline(1)
Next
Die Differenz des ersten Wertes (siehe Bild RT-Feld) ist eindeutig negativ. Mit dem Debugger habe ich auch verfolgt, dass richStyle.NotesColor auf COLOR_RED gesetzt wird.
Trotzdem wird der Wert in Schwarz angezeigt.
Per NotesPeek habe ich das RT-Feld angeschaut (siehe Bild Notespeek) und hier wundert mich, dass der erste Wert zwar als String "-1" angebenen wird, aber weder die Parameter Begin-Text, Color und End-Text gesetzt sind, wie bei den folgenden Werten.
Ich hab mir etliche Beispiele und die Designer-Hilfe durchgelesen. Finde aber keinen Hinweis, dass ich das RT-Feld irgendwie initialisieren muss, sondern aus den Infos die ich mir herausgezogen habe, kann ich da einfach anfangen reinzuschreiben.
Was mach ich da falsch?
Bye,
Markus
Ja da gibts einen Bug.Der Kommentar im Quellcode sagt eigentlich alles ;)
If newStyle <> currStyle Then
currStyle = newStyle
Call contentItem.Appendrtitem(emptyRt)
' 13.11.12/RPr: Durch einen Bug (?) in Notes muss immer erst irgendetwas zum RT-Item hinzugefügt werden
' bevor man appendStyle aufruft (liegt warhscheinlich daran, weil das Dok zuvor gespeichert wurden)
' contentItem NOTHING setzen, update/compact all das hab ich probiert. Ebenso ein appendText("") und addNewLine(0)
' Erst wenn irgendwas hinzugefügt wird, geht der Style
Call contentItem.Appendstyle(styles(newStyle))
End If
in meinem Fall füge ich ein leeres RT Item hinzu (zugegeben nicht effizient aber was will man machen....)
Gruß
Roland