0

场景是有一个带有 RichText 字段的表单(假设它称为Body);以及一个名为“阅读”的按钮

创建文档后,RichText 字段主体内部将有一个默认的 2x2 表格。用户必须在单元格中输入值并按下读取,这将从表中读取值并将其插入到数组中。

4

1 回答 1

3

为了能够阅读richtext-item-contents,必须保存文档。

那么 NotesRichtextTableClass 是您的起点。以下示例主要取自设计器帮助(是的,集成在您的设计器中,但也可以在 IBM找到...)

Dim ws as New NotesUIWorkspace
Dim uidoc as NotesUIDocument

Dim doc as NotesDocument
Dim rti As NotesRichTextItem
Dim rtnav As NotesRichTextNavigator
Dim rtt As NotesRichTextTable
Dim rtrange As NotesRichTextRange

Set uidoc = ws.CurrentDocument
Call uidoc.Save() 'otherwise you will not be able to get the contents of the richtextitem

Set doc = uidoc.document
Set rti = doc.GetFirstItem("Body")
Set rtnav = rti.CreateNavigator
If Not rtnav.FindFirstElement(RTELEM_TYPE_TABLE) Then
  Messagebox "Body item does not contain a table,",, _
  "Error"
  Exit Sub
End If
Set rtt = rtnav.GetElement
Set rtrange = rti.CreateRange
Call rtnav.FindFirstElement(RTELEM_TYPE_TABLECELL)
firstFlag = True
For i& = 1 To rtt.RowCount
  For j& = 1 To rtt.ColumnCount
    If Not firstFlag Then
      Call rtnav.FindNextElement(RTELEM_TYPE_TABLECELL)
    Else
      firstFlag = False
    End If
    Call rtrange.SetBegin(rtnav)
    Messagebox rtrange.TextParagraph,, _
    "Row " & i& & _
    ", Column " & j&
  Next
Next
于 2013-07-15T12:33:23.180 回答