Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

ОБРАБОТКА СОБЫТИЙ В Visual FoxPro





 

Теоретические сведения.

Модель события Visual FoxPro позволяет программисту разрабатывать истинно немодальные приложения, то есть дает возможность, например, автоматически координировать множественные формы и одновременно выполнять множественные экземпляры форм. Окно или форма является немодальным, если пользователь не должен закрывать их перед переключением к другой форме или окну. Система обработки событий Visual FoxPro автоматически вызывает код события в ответ на действия пользователя, нужно только посредством определения класса объекта управления определить, что должно произойти после выбора данного объекта управления, а для последующей обработки не следует писать никакого дополнительного кода. В общем случае событие – это переход объекта из одного состояния в другое. К основным событиям можно отнести загрузку формы (Load), удаление формы (Unload), инициализация объекта (Init), щелчок мыши (Click), активизация (GotFocus), деактивизация (LotFocus) и другие. Событие RightClick происходит при нажатии на правую кнопку мыши. Перекрыв это событие можно создать всплывающее меню. Для этого на уровне формы, перекрыв события Init или Load, описывается меню с помощью операторов вида:

DEFINE POPUP < имя меню> IN WINDOW < имя формы, в которой используется меню>

DEFINE BAR < номер пункта меню> OF < имя меню> PROMPT “название пункта меню”

Для описания действий при выборе пунктов меню используются операторы

ON SELECTION POPUP < имя меню> DO < имя командного файла, запускаемого при выборе пунктов меню>.PRG

(Например меню сосоит из двух пунктов: А и В, тогда для его описания нужна последовательность команд:

DEFINE POPUP m IN WINDOW form1

DEFINE BAR 1 OF m PROMPT “А”

DEFINE BAR 2 OF m PROMPT “В”

ON SELECTION POPUP m g.prg)

Перекрыв событие нажатия правой кнопки мыши, например на уровне формы, вызывается созданное меню:

MOVE POPUP < имя меню> TO < номер строки, номер столбца, где будет отображено меню>

ACTIVATE POPUP < имя меню>

(В нашем примере: move popup m to 6, 35

activate popup m)

Кроме этого должен быть описан программный файл, показывающий действия при выборе пунктов меню.

(В нашем примере это g.prg:

PROCEDURE G

IF BAR()=1

MESSAGE(“текст1”)

ELSE

MESSAGE(“текст2”)

ENDIF

ENDPROC)

Событие Valid происходит на уровне ввода значения в поле базы данных. Это событие возвращает.T., если данное удовлетворяет условию, иначе данное не вводится в базу данных и остается в режиме ожидания ввода в поле. Например, код события может включать следующие команды:

IF THIS.VALUE > < значение типа поля ввода>

RETURN.T.

ELSE

RETURN.F.

ENDIF)

Событие GotFocus возникает при активизации объекта, а LostFocus при деактивизации объекта. Перекрыв эти события на уровне поля можно при попадания фокуса на поле выделить его цветом, набрав последовательность команд:

THIS.FORECOLOR=RGB(0, 0, 0)

THIS.BACKCOLOR=RGB(255, 0, 0)

При потере фокуса – последовательность команд:

THIS.FORECOLOR=RGB(0, 0, 0)

THIS.BACKCOLOR=RGB(255, 255, 255)

Обработка события Message приводит к выводу сообщения в стоке статуса.

Обработка события Programmatic Change происходит при изменении у объекта свойства Value программным путём, то есть, когда в программе есть код Object.Value=значение.

Задание на лабораторную работу.

 

1. Создать всплывающее меню при работе на уровне поля, содержащее пункты: ввод значение по умолчанию, очищение поля.

2. Выполнить проверку значения вводимой даты поступления в институт до ввода в базу данных.

3. Вывести сообщение в строку статуса, поясняющее содержимое поля ввода при появлении фокуса в этом поле.

4. Выделить поле особым цветом при попадании фокуса в это поле и вернуть прежний цвет при потере фокуса.

 

Вопросы.

 

1. Что такое событие?

2. Каков механизм обработки событий в Visual FoxPro?

3. Какие основные события Вы знаете?

4. Каким образом создается всплывающее меню?

 







Дата добавления: 2014-11-10; просмотров: 1042. Нарушение авторских прав; Мы поможем в написании вашей работы!




Картограммы и картодиаграммы Картограммы и картодиаграммы применяются для изображения географической характеристики изучаемых явлений...


Практические расчеты на срез и смятие При изучении темы обратите внимание на основные расчетные предпосылки и условности расчета...


Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...


Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

Виды сухожильных швов После выделения культи сухожилия и эвакуации гематомы приступают к восстановлению целостности сухожилия...

КОНСТРУКЦИЯ КОЛЕСНОЙ ПАРЫ ВАГОНА Тип колёсной пары определяется типом оси и диаметром колес. Согласно ГОСТ 4835-2006* устанавливаются типы колесных пар для грузовых вагонов с осями РУ1Ш и РВ2Ш и колесами диаметром по кругу катания 957 мм. Номинальный диаметр колеса – 950 мм...

Философские школы эпохи эллинизма (неоплатонизм, эпикуреизм, стоицизм, скептицизм). Эпоха эллинизма со времени походов Александра Македонского, в результате которых была образована гигантская империя от Индии на востоке до Греции и Македонии на западе...

Оценка качества Анализ документации. Имеющийся рецепт, паспорт письменного контроля и номер лекарственной формы соответствуют друг другу. Ингредиенты совместимы, расчеты сделаны верно, паспорт письменного контроля выписан верно. Правильность упаковки и оформления....

БИОХИМИЯ ТКАНЕЙ ЗУБА В составе зуба выделяют минерализованные и неминерализованные ткани...

Типология суицида. Феномен суицида (самоубийство или попытка самоубийства) чаще всего связывается с представлением о психологическом кризисе личности...

Studopedia.info - Студопедия - 2014-2026 год . (0.012 сек.) русская версия | украинская версия