Министерство образования и науки РФ

Новосибирский государственный технический университет

Лабораторная работа №4 по дисциплине «Базы данных» в среде Visual FoxPro 6.0

Выполнил: Преподаватель:

Студент: Майснер Г. В.

Факультет: АВТ

Группа: АМ-209

Вариант: 5

Новосибирск, 2005

Цель работы: изучить средства Visual FoxPro 6.0, позволяющие создавать экранные формы ввода-вывода данных в удобном для пользователя виде, сопровождая их пояснительными надписями, использовать другие элементы оформления: рамки, выделение цветом. Изучить различные элементы управления: кнопки, переключатели, списки, раскрывающиеся списки, счётчики, флажки, поля ввода и редактирования.

Задание: Создать форму на основе лабораторной работы №1. В форме обязательно присутствие таких элементов, как Label (метка), TextBox (поле ввода), EditBox (поле редактирования), Command Button (Кнопка), Option Group (Переключатель), CheckBox (флажок), ComboBox (раскрывающийся список), Spinner (счётчик), Image (изображение), Common Group (группа кнопок), Grid (Таблица). Элементы формы в качестве выполняемого действия должны содержать результаты предыдущих лабораторных работ: создание отчёта, поиск, сортировка, редактирование, просмотр данных, индексирование по заданному критерию и т. д. Форма должна быть озаглавлена, а также содержать кнопку перемещения по базе данных и кнопку «Выход». Предполагается, что база данных создана ранее, либо предусматривается её создание стандартными средствами в среде Visual FoxPro 6.0. Также обязательным условием является наглядное представление работы созданных элементов.

НЕ нашли? Не то? Что вы ищете?

Форма должна иметь 5 вкладок, изменять цвет и возвращать его к обычному с помощью флажка. Переключатель должен иметь 7 положений, вид переключателя – стандартный. Счётчик ограничивается значениями «-10» и «0». Значения «-9» и «-3» являются минимумом и максимумом для ввода в поле счётчика с клавиатуры, шаг изменения значения поля равен 0.3. Раскрывающийся список создать таким, чтобы из него пользователь мог выбрать значение или ввести его в поле ввода списка, источником данных для которого является заданный список значений.

Результаты работы:

В результате выполнения данной лабораторной работы были освоены средства создания экранных форм в среде Visual FoxPro 6.0. В рамках лабораторной работы №1 была создана таблица согласно варианту задания. В лабораторной работе №2 использована эта таблица и сформирован отчёт по заданию. В лабораторной работе №3 используются таблицы и отчёты, созданные в рамках предыдущих лабораторных работ. В лабораторной работе №4 используются все результаты предыдущих лабораторных работ. Согласно варианту задания, помимо основных элементов управления использовались следующие элементы с указанными опциями:

Элемент управления Page Frame (рис.1):

Рис.1 Вид базы данных с 5 вкладками (Вкладка №1).

Значение свойства PageCount равно 5 (Intro, Operations, Index, Other, Table).

Рис.2 Вид базы данных с 5 вкладками (Вкладка №2).

Рис.3 Вид базы данных с 5 вкладками (Вкладка №3).

Рис.4 Вид базы данных с 5 вкладками (Вкладка №4).

Рис.5 Вид базы данных с 5 вкладками (Вкладка №5).

Элемент управления CheckBox (Флажок) (рис.6):

Рис.6 Переключатель цвета.

Чтобы флажок реализовывал переключение с одного цвета на другой, нужно написать следующую процедуру:

if (thisform.backcolor=RGB(236,233,216))

thisform. backcolor=RGB(180,0,50)

else

thisform. backcolor=RGB(236,233,216)

endif

thisform. refresh

Элемент управления Option Group (Переключатель) (рис.7 и рис.8):

Виды данных элементов управления – стандартный и графический. Следовательно, соответствующие свойства данных элементов управления должны иметь значение standard и graphical. Переключатель задаёт поле, по которому производится индексирование таблицы.

и

Рис.7 Стандартный вид. Рис.8 Графический вид

Элемент управления Spinner (счётчик) (рис. 9):

В соответствии с заданием счётчик реализуется с минимальным значением (KeyBoardLowValue) «-9» и с максимальным (KeyBoardHighValue) – «-3». Далее, устанавливаем значение поля increment равным 0.3.

Рис.9 Вид счетчика в БД.

На рис.10 показаны свойства счетчика:

Рис.10 Свойства счетчика.

Элемент управления Image (изображение) (рис.11)

Чтобы установить изображение, нужно установить свойство ShowTips – True, для изображения установить следующие свойства:

    Picture: E:\Am-209\MihaM\ woman_photo_top[1].jpg и Readers_Choice_Logo[1].jpg ToolTipText: Девушка и логотип Выбор Читателей

Рис.11 Некоторые используемые рисунки.

Элемент управления ComboBox (раскрывающийся список) (рис. 12)

Раскрывающийся список реализован таким, чтобы из него пользователь мог выбрать значение или ввести его в поле ввода списка, источником данных для которого является заданный список значений.

Рис. 12 Раскрывающийся список.

Кроме специально заданных элементов управления согласно варианту лабораторной работы использованы и такие основные, как:

·  Кнопки (см. рис.2 кнопки Top, Previous, Next!!!, Bottom),

·  Переключатели (см. рис.3 переключатели Index on:),

·  Раскрывающиеся списки (см. рис.12),,

·  Счётчики (см. рис.9),

·  Флажки (см. рис.6),,

·  Поля ввода и редактирования (см. рис.2),.

Реализованные процедуры

Группа методов для передвижения по базе данных:

1.  Установка на начало БД:

go top

thisform. refresh

2.  Движение к предыдущему элементу БД:

if (BOF())

MessageBOx("Пришли в начало базы данных.")

else

skip -1

endif

thisform. refresh

3.  Движение к следущему элементу БД:

if (EOF())

MessageBOx("Дошли до конца базы данных.")

else

skip 1

endif

thisform. refresh

4. Движение к концу БД:

go bottom

thisform. refresh

Метод для индексирования базы данных по выбранному полю:

OptionGroup1.Option1

do case

case thisform. pageframe1.page3.optiongroup1.option1.value = 1

close database

use E:\AM-209\MihaM\111.dbf exclusive

index on familiya to E:\AM-209\MihaM\laba4temp1.idx

endcase

OptionGroup1.Option2

do case

case thisform. pageframe1.page3.optiongroup1.option2.value = 1

close database

use E:\AM-209\MihaM\111.dbf exclusive

index on imya to E:\AM-209\MihaM\laba4temp2.idx

endcase

OptionGroup1.Option3

do case

case thisform. pageframe1.page3.optiongroup1.option3.value = 1

close database

use E:\AM-209\MihaM\111.dbf exclusive

index on otchestvo to E:\AM-209\MihaM\laba4temp3.idx

endcase

OptionGroup2.Option1

use E:\AM-209\MihaM\111.dbf exclusive

index on fakultet to E:\AM-209\MihaM\laba4temp4.idx

thisform. refresh

OptionGroup2.Option2

use E:\AM-209\MihaM\111.dbf exclusive

index on gruppa to E:\AM-209\MihaM\laba4temp5.idx

thisform. refresh

OptionGroup2.Option3

use E:\AM-209\MihaM\111.dbf exclusive

index on kurs to E:\AM-209\MihaM\laba4temp6.idx

thisform. refresh

Кнопка Find!!!

seek thisform. pageframe1.page3.edit1.value

browse

Метод для выdода отчёта:

1) General report

modify report "E:\AM-209\MihaM\report1.frx"

2) Multicoloms report

modify report "E:\AM-209\MihaM\REPORT1(MNOGOCOLON).FRX"

Метод для выхода из экранной формы (кнопка EXIT):

thisform. release

Встроенное меню (по клику правой кнопки мыши) (рис.13):

Рис.13 Выпадающее меню

В свойствах формы RightClickEvent используем процедуру:

do "E:\AM-209\MihaM\3\MENU1VSPLIV. MPR"

Там же в свойствах формы ShowTips ставим значение. T. – True для показа всплывающих подсказок.

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

Анализ результатов и выводы:

Созданная экранная форма приложения позволяет ещё до реального своего воплощения продемонстрировать структуру этого приложения, его перечень команд и процедур.

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

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

Для работы с отчётами можно сделать всплывающее меню для вывода отчёта конкретного вида. Также, если требуется выполнить несколько действий, то можно реализовать процедуру. Эти и многие другие возможности были успешно исследованы и применены на практике.

Таким образом, в результате выполнения данной лабораторной работы были освоены основные приёмы создания экранных форм приложений, использующих базы данных. Оболочка Visual FoxPro 6.0. предоставляет широкий спектр как для создания баз данных, таблиц, отчётов так и для создания меню и экранных форм.