Документация по Clarion


LIST (описывает список) - часть 2


Если у LIST-а есть атрибут IMM и QUEUE изменяется в то время, когда LIST ждет ввода от пользователя, надо использовать оператор DISPLAY для обновления списка.
Полоса курсора позволяет оператору выбирать элемент из списка. FILL-поле обновляется по мере продвижения курсора по списку. Список завершается нажатием TAB для CUA экранов (и TAB или ENTER для не-CUA экранов) и процесс обработки переходит к следующему полю для ввода. Двойной щелчок мышки также завершает список, но не переводит обработку автоматически на следующее поле. Функция CHOICE возвращает номер записи в QUEUE (значение возвращаемое функцией POINTER(queue)) соответствующий элементу, выбранному по завершении списка. Второй параметр оператора SELECT может быть использован для помещения курсора на НЕ первый элемент списка.
Список с атрибутом IMM, прокручивается горизонтально на 255 символов. Без атрибута IMM, он прокручивается в пределах самой длин ной записи в QUEUE (до 255 символов).
Если задан атрибут COLS, полоса курсора подсвечивает один столбец (заданный атрибутом COLS) за раз, и стрелки влево/вправо позволяют переходить от столбца к столбцу в пределах элемента списка. Атрибут FIX можно использовать для создания заголовков столбцов, которые прокручиваются только горизонтально, вместе со всем списком, не прокручиваясь по вертикали (они зафиксированы в списке). Пользователь не может отметить или изменить заголовки.
Пример:
SelectPart PROCEDURE
ListOue QUEUE,PRE(Lst) !Очередь для номеров З/Ч
PartNo STRING(10) ! отформатирована для
. ! вывода на экран
Screen SCREEN(20,30),PRE(Scr)
ROW(3,45) ENTRY(@slO),USE(Trn:PartNo),SKIP
ROW(4,45) LIST(10,10),FROM(Lst:PartNo)|
,FILL(?Trn:PartNo),USE(?PartList)
.
CODE
SET(PartsFile) !Строим QUEUE для LISTбокса
LOOP UNTIL EOF(PartsFile)
NEXT(PartsFile)
IF ERRORCODE() THEN STOP(ERROR()).
Lst:PartNo = Par:PartNo
ADD(ListOue,Lst:PartNo)
IF ERRORCODE() THEN STOP(ERROR()).
.
OPEN(Screen) !Теперь откроем экран и...
ACCEPT ! выбор за пользователем!
См. также: QUEUE, SELECT



Начало  Назад  Вперед