Замечание.
Интерактивная настойка на нужный каталог: ppath=GetDir()
Лекция 13
Многооконный интерфейс
Построение эффективного интерфейса доступно только при наличии
следующих средств:
1. Возможность работы с несколькими окнами одновременно. Это увеличивает рабочую поверхность монитора и снижает потребность в перемещениях по уровням и объектам приложения, отвлекающих пользователя и требующих затрат времени и внимания.
2. Средства обеспечения удобного ввода/редактирования данных и
всестороннего их формального контроля. 1
3. Возможность доступа к данным, представленными как в табличной,
так и в 'индивидуальной" форме.
4. Разнообразные средства управления процессом, адекватные механизмам
принятия решений, которыми мы пользуемся в жизни - меню и кнопки
с альтернативным и множественным выбором ,"настроечные" кнопки,
управляющие клавиши.
5. Использование мыши.
В FoxPro эти задачи решаются с помощью команды READ.
Команда READ
Сейчас, когда рассмотрены все GET-объекты, приведем более полный
формат команды READ, а также некоторые смежные команды и
функции.
READ [CYCLE]
[ACTIVATE <выр L1>]
[DEACTIVATE<выр L2>]
[MODAL]
[WITH <списококон>]
[SHOW <выр L3>]
[VALID <выр L4/выр N1>]
[WHEN <выр L5>]
[OBJECT <выр N2>]
[NOMOUSE]
[LOCK/NOLOCK]
[TIMEOUT <выр N3>]
[COLOR <списокцветовыхпар> /COLOR SCHEME <выр N4>]
Команда активирует все выданные ранее команды @...GET/EDIT и позволяет произвольно перемещаться среди редактируемых полей, используя клавиши Tab/Shift-Tab и клавиши со стрелками. Редактирование может быть завершено (по умолчанию) при попытке продвинуть курсор за первое поле или ниже последнего, а также с помощью клавиш PgUp/PgDn. Выход может быть осуществлен при нажатии клавиш Escape, Ctri-End/W. В GET-полях доступны все средства редактирования данных, включая удаление, копирование и вклейку.
При перемещениях в окнах редактирования осуществляется следующая
последовательность действий:
a)Когда команда READ выполняется первый раз:
исполняется READ WHEN;
активируется первое окно GET;
выполняется READ ACTIVATE;
выполняется READ SHOW;
исполняется опция WHEN уровня GET первой команды @...GET
б)Когда активируется новое окно:
выполняется опция VALID для поля, откуда происходит выход;
выполняется READ DEACTIVATE;
деактивируется текущее окно;
активизируется новое окно с GET-ПОЛЯМИ;
выполняется READ ACTIVATE;
выполняется опция WHEN для нового поля.
Опции команды:
CYCLE - запрещает выход из команды READ по достижении первого/
последнего объекта, обслуживаемого данной командой внутри
окна/экрана. При достижении такого поля курсор перемещается по
кругу на последнее/первое поле. Выход из READ остается возможным в
случае нажатия клавиш Escape, Ctrl-W/End и использования команды CLEAR READ.
ACTIVATE <выр L1> - организует проверку условий, когда делается попытка войти в очередное окно, управляемое данной командой READ. Результат, возвращаемый <выр L1>, безразличен и не препятствует входу в окна. Условия обычно реализуются в пользовательских процедурах/функциях, которые могут содержать, конечно, не только условия, но и любые действия по управлению (в том числе поиск, предъявление меню, открытие/закрытие других окон, выдача сообщений и т д.
DEACTIVATE <вырL2> - то же, но условие проверяется при выходе из текущего окна. Если возвращается значение .Т., команда READ завершается, если .F. - осуществляется переход в другое окно. MODAL - ограничивает доступ пользователя только к окнам, обслуживаемым данной командой READ. Другие окна, даже если они открыты, не будут доступны.
WITH <список окон> - задает перечень окон, к которым разрешен доступ, например к окнам BROWSE. Опция MODAL подразумевается тогда по умолчанию.
SHOW <выр L3> - выполняется всегда при появлении команды SHOW
GETS и служит обычно для задания процедуры обновления данных, выводимых по командам @...SAY ...GET, или блокировки/разблокировки GET-объектов. Значение, возвращаемое <вырL3>, игнорируется.
VALID <выр L4>/<выр N1> - управляет прекращением команды READ и исполняется при попытке выхода из READ. Если <выр L4>=.T.,
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.