Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
10
Добавлен:
31.03.2015
Размер:
47.62 Кб
Скачать

МАТЕРИАЛЫ

для самостоятельной подготовки в период учебной практики на 2 курсе

Тема 6: «Создание и использование экранных форм»

Цель работы: Освоение основных понятий и методов формирования, настройки и применения экранных форм в среде Visual FoxPro.

Изучаемые команды СУБД Visual FoxPro: DO FORM, ?

  1. Обратиться к Visual FoxPro. Установить путь по умолчанию к своей папке на рабочем диске. Переписать в нее все компоненты базы данных KOM_FIRM, созданной в теме 3.

Запустить на выполнение программу PR_FORM.PRG командой

DO PR_FORM

Изучить содержание появляющегося на экране окна с информацией о фирмах-клиентах. С помощью мыши щелкнуть поочередно по строкам с названиями фирм «БАЗИС», «ГАИн», «КЦФЭ», «ИОС». Обратить внимание на изменения, происходящие со строками списка, по которым были сделаны щелчки. Затем повторно щелкнуть по 1-2 ранее отмеченным строкам.

Используя предложения «Файл (File)» главного меню и «Открыть (Open)» открыть форму (Form) FRM_FIRM.SCX в окне конструирования экранной формы (Form Designer). Изучить изображение экранной формы и содержимое окна «Свойства (Properties)». Если окно «Свойства..» отсутствует на экране, вывести его, используя предложение «Отобразить (View)» главного меню и «Свойства (Properties)». Другой способ – щелчок правой кнопкой мыши и выбор из меню предложения «Свойства (Properties)».

В окне «Свойства (Properties)» раскрыть расположенное в верхней части окно описания структуры объекта, в котором первоначально указано имя объекта «Form1».

В раскрывшемся окне структуры показана иерархическая структура объекта «Form1», включающая, помимо самой формы также встроенный объект «Таблица (Grid1)», который, в свою очередь, состоит из двух столбцов «Column1» и «Column2», каждый из которых включает заголовок «Header1» и текстовые ячейки «Text1». Таким образом, в составе экранной формы FRM_FIRM содержится 8 компонент: «Form1», «Grid1», «Column1» и «Column2», 2*«Header1» и 2*«Text1». Состояние и поведение каждой компоненты могут быть настроены в окне «Свойства (Properties)». Для этого используются свойства и методы, описание которых задается на 5 закладках в нижней части окна. Содержание закладок зависит от того, какая компонента формы выбрана в верхнем окне.

Изучить свойства формы, обратив особое внимание на те, значения которых изменялись в процессе конструирования формы. Эти свойства выделены полужирным шрифтом. Записать значения свойств «Источник данных (ControlSource)» объектов «Column1» и «Column2». Эти свойства определяют, откуда должны поступать данные, отображаемые в столбцах таблицы. Также обратить внимание на значение свойства формы WindowType – оно должно иметь значение MODAL.

Изменить следующие свойства формы Form1:

  • центрирование расположения формы на экране (AutoCenter) – изменить на значение «.T. – True»;

  • цвет подложки формы (BackColor) – изменить на зеленый;

  • шрифт надписей (FontName) и (FontSize) – изменить на Times New Roman CYR и 12”;

  • ширина формы (Width) – изменить на 450.

В остальные компоненты внести следующие изменения:

  • закрасить первый столбец таблицы голубым цветом;

  • изменить высоту заголовка до 25;

  • изменить размер шрифта в заголовках – до 12;

  • изменить ширину второго столбца – до 100.

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

Вновь открыть форму FRM_FIRM. Изучить методы, которые используются в форме для изменения ее состояния. Выбрать в окне свойств закладку «Методы (Methods)» и перебирая компоненты найти в приводимых списках методы, измененные по сравнению со стандартными (Default). Измененные методы выделены в списке надписями «Пользовательская процедура (User Procedure)». Используя левую кнопку мыши, сделать сдвоенный щелчок по строке списка с надписью «User Procedure» и на экране раскроется окно с текстом процедуры. Изучить содержание этих процедур.

Изменить экранную форму за счет добавления кнопки «Выход», размещенной на форме и обеспечивающей нормальное завершение работы с формой. Для этого использовать окно «Компоненты формы (Form Controls)». Если оно отсутствует на экране при наличии окна конструирования экранной формы (Form Designer), следует его вывести с использованием предложения «Отобразить (View)» главного меню и «Библиотека компонент формы (Form Controls Toolbar)».

В окне «Компоненты формы (Form Controls)» выбрать иконку с изображением кнопки (Command Button), щелкнуть по ней левой кнопкой мыши, перенести и растянуть изображение кнопки в выбранное место на форме. После этого настроить свойства объекта «Кнопка (Button1)» - цвет, надпись и др. Открыть закладку «Методы (Methods)», выбрать в списке строку «Click Event» и сделать по ней двойной щелчок мышью. В раскрывшемся окне пользовательской процедуры ввести команду обращения к методу завершения работы с формой и устранения ее из оперативной памяти

ThisForm.Release

Закрыть окно процедуры и завершить конструирование формы с сохранением сделанных изменений. Проверить работоспособность модифицированной формы запуском программы PR_FORM.

  1. В командном окне ввести команду задания значения переменной памяти FLAG «Ложь»

FLAG=.F.

После этого ввести команду активизации экранной формы

DO FORM IDENTIF

Изучить структуру появившейся экранной формы. Раскрыть окно выбора «ФИО пользователя» и выбрать в нем строку с фамилией «ПЕТРОВ П.П.». В окне задания идентификационного номера ввести цифру «4» (на экране ввод не отображается). Наконец, в окне задания кода доступа ввести «ПЕТР» и нажать клавишу ENTER. После появления сообщения об успешной идентификации пользователя закрыть экранную форму и определить значение переменной памяти FLAG с помощью команды

?FLAG

Какое значение теперь имеет переменная FLAG ?

Вновь активизировать экранную форму IDENTIF и для Петрова П.П. ввести любые другие идентификационный номер и/или код доступа. Убедиться в том, что в этом случае при выходе из экранной формы значение переменной FLAG=.F .

Открыть окно конструирования с экранной формой IDENTIF.SCX и просмотреть список свойств формы. Для свойств, значения которых выделены жирным шрифтом, подобрать объяснения их смысла, используя системную помощь (HELP).

Раскрыть на экране и изучить тексты пользовательских процедур для методов LOAD EVENT и INIT EVENT. Как обеспечивается вывод сообщения о состоянии идентификации? Какая таблица открывается при обращении к данной экранной форме? Открыть эту таблицу и вывести ее на экран. Просмотреть пользовательскую процедуру, связанную с методом UNLOAD EVENT, и убедиться, что таблица закрывается при выходе из экранной формы.

В окне свойств просмотреть и объяснить выделенные жирным шрифтом свойства объекта COMBO1. Как обеспечена связь этого объекта со столбцом FIO используемой таблицы? Что происходит при выборе одной из фамилий?

В окне свойств просмотреть и объяснить выделенные жирным шрифтом свойства объекта TEXT1. Обратившись к помощи, изучить смысл метода VALID EVENT. Просмотреть пользовательскую процедуру для этого метода. Как обеспечивается контроль состояния идентификации, изменение сообщения об этом состоянии и формирование значения переменной FLAG?

  1. Сконструировать новую экранную форму с именем REGISTR, используя которую можно было бы дополнять таблицу идентификации пользователей FIO_LOG.DBF новыми записями. В форме должны обеспечиваться ввод и занесение в эту таблицу следующих атрибутов: ФИО пользователя, его идентификационный номер, код доступа. Для проверки корректности новой формы активизировать ее, ввести новую запись, затем обратиться к форме IDENTIF.SCX и проверить возможность идентификации нового пользователя.

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

Контрольные вопросы.

  • Какие объекты (компоненты) могут включаться в состав экранной формы?

  • Что определяют свойства и методы объектов? Где и как они задаются?

  • Какие свойства задают параметры шрифта, используемого в объекте? Какие свойства задают цветовое оформление объекта?

  • Какие свойства задают размеры объекта и его расположение на экране?

  • С использованием каких свойств объект можно делать временно невидимым на экране или недоступным для изменения?

  • В какой момент (при каких обстоятельствах) срабатывают следующие методы объекта-формы: INIT EVENT, LOAD EVENT, ACTIVATE EVENT?

  • В какой момент (при каких обстоятельствах) срабатывают следующие методы объекта-формы:UNLOAD EVENT, DEACTIVATE EVENT, DESTROY EVENT?

  • Как в приложении PR_FORM достигается изменение окраски строки списка при щелчке по нему левой кнопкой мыши?

  • Как в приложении IDENTIF обеспечивается вывод сообщения об итоге идентификации пользователя?

  • Как в приложении IDENTIF формируется выводимый список для выбора (ComboBox) с фамилиями пользователей?

  • Как в приложении IDENTIF обеспечивается «невидимость» вводимого кода пользователя?

  • Что нужно сделать, чтобы получить в программе, вызывающей экранную форму, некоторые результаты ее функционирования (введенные или выбранные значения, принятые пользователем решения и др.)?

  • Можно ли начинать приложение с команды обращения к экранной форме?

  • Как задать значение некоторого свойства формы в реализации одного из методов формы?

Соседние файлы в папке TEMA6
  • #
    31.03.20152.66 Кб10registr.SCT
  • #
    31.03.20152.23 Кб9registr.scx
  • #
    31.03.20159.79 Кб9SP_FIRM.DBF
  • #
    31.03.20154.1 Кб9tovary.CDX
  • #
    31.03.201540.05 Кб9tovary.DBF
  • #
    31.03.201547.62 Кб10VFP_T6.doc