Richtextitem+richtexttable

Тема в разделе "Lotus - Программирование", создана пользователем 11BOSS11, 15 июл 2010.

  1. 11BOSS11

    11BOSS11 Гость

    ДОбрый день всем!!
    Нужна помощь!
    Есть Ричтекст итем, в нем таблица. Нужно взять любой нужный мне параграф из любой ,нужной мне , ячейки.
    Помогите пожалуйста, если можно кодом!!!!......... :ya_lamo:


    Добавлено: вот так я доступаюсь до таблицы, потом к нужной ячейке и потом перебираю параграфы,(!!НО ПО НАВИГАТОРУ ТАБЛИЧНОМУ!!),
    а мне нужно както навигировать по ячейке таблицы..:

    Код (LotusScript):
    Dim session As New NotesSession
    Dim db As NotesDatabase
    Set db = session.CurrentDatabase
    Dim dc As NotesDocumentCollection
    Set dc = db.UnprocessedDocuments
    Dim doc As NotesDocument
    Set doc = dc.GetFirstDocument
    Dim rti As NotesRichTextItem
    Set rti = doc.GetFirstItem("prn_table")
    Dim rtnav As NotesRichTextNavigator
    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
    Dim rtt As NotesRichTextTable
    Set rtt = rtnav.GetElement
    Dim rtrange As NotesRichTextRange
    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)

    Call rtrange.SetBegin(rtnav)
    'Call rtnav.FindNextElement(RTELEM_TYPE_TABLECELL)
    'Call rtrange.SetEnd(rtnav)

    Dim rangenav As NotesRichTextNavigator
    Set rangenav = rtrange.Navigator

    'Call rtrange.Navigator.FindLastElement(RTELEM_TYPE_TEXTPARAGRAPH)
    'Call rtrange.Navigator.FindLastElement(RTELEM_TYPE_TABLECELL)



    Messagebox rtrange.TextParagraph,, _
    "Row " & i& & _
    ", Column " & j&

    celltext =""
    While rangenav.FindNextElement(RTELEM_TYPE_TEXTPARAGRAPH)

    Call rtrange.SetBegin(rtnav)
    celltext =celltext+rtrange.TextParagraph+"#"

    Wend

    '   Call rtNavCell.FindFirstElement(RTELEM_TYPE_TEXTPARAGRAPH)



    If Messagebox(celltext,1, "Row " & i& &     ", Column " & j& )=2 Then Exit Sub




    Next
    Next
    Добавлено:

    я пробовал создавать навигатор ячейки таблици:Set rangenav = rtrange.Navigator, - но с ним почемуто не получается так работаь ка в этом коде..
     
  2. lmike

    lmike нет, пердело совершенство
    Команда форума Lotus team

    Регистрация:
    27 авг 2008
    Сообщения:
    6.073
    Симпатии:
    299
    когда надоест страдать х... пользовать глюкавые классы (верх индуиской нирваны с камасутрой) - возмёте ДХЛ
    но если надо в UI - предстоят-таки пути по тёмным закоулкам программисткой мысли, с забытыми,в произвольных местах, граблями
     

Поделиться этой страницей