Не могу понять как работает Listbox

Тема в разделе "Lotus - Программирование", создана пользователем PavelT100, 2 окт 2008.

  1. PavelT100

    PavelT100 Well-Known Member

    Регистрация:
    9 июл 2007
    Сообщения:
    105
    Симпатии:
    0
    Не могу разобраться как работает уже написанных код. На subforme есть Listbox под название tmpLIST в режиме Editable. На второй закладке выбрана опция "Use formula for choices". И в формуле указано dsLIST. Стоят галки "Refresh fields on keyword change" и "Refresh choises on document refresh". Больше никаких опций ни в какой закладке я не нашел. Далее еcть текстовое поле Unid в режиме "Computed for display" и в окне Value прописана формула tmpLIST. Больше никаких опций ни в какой закладке для этого поля я не нашел.
    Далее есть код вызова этой subforme :
    Код (Text):
            Dim ui As New notesuiworkspace 
    Set dialog = db.CreateDocument
    dialog.dsLIST = out_array
    dialog.tmpLIST = Right$(out_array(0), 32)
    listSelect$=""
    If ui.DialogBox ( "HL_DLG11", True, True, False, False, False, False, "Séléction de la pharmacie : Etape 2", dialog) Then
    listSelect$ = Cstr(dialog.tmpLIST(0))
    Set doc=db.GetDocumentByUNID(listSelect$)
    Set CliSearchSQL=doc
    Else
    doc.SQLStatus=1
    End If
    Здесь out_array это строковый массив. Строки длинные. Левая часть строк показывается в ListBox. А крание правые 32 символа каждой строки это Unid некоторых документов. При открытии формы в листбоксе позиционируется первая строка и в поле Unid отображается правая часть первой строки - это я могу понять - dialog.tmpLIST = Right$(out_array(0), 32). Но при перемещениях по листбоксу изменяется и поле Unid правильно вырезая крание правые 32 символа из соответвующих строк. Но где может быть код который это делает? Я не могу его найти. Повторив это все что нашел в своей новой форме - получил иной результат. При откытии диалога действительно в поле UNID показывается последние 32 символа первой строки, но при перемещениях по курсору в Unid показывается вся текущая строка листбокса начиная с первого левого символа.
     
  2. morpheus

    morpheus скриптописец

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    в поле TMPList есть галка Allow keyword synonyms
    эро означает что в поле TMPList будет отбражаться левая часть поля dsLIST от разделител | (верт. палочка)
     
Загрузка...

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