Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Тема 7. Разработка базы данныхСодержание книги
Похожие статьи вашей тематики
Поиск на нашем сайте
Практическая работа № 7.1 1. Программа создает базу данных по учету кадров предприятия. Заполнение базы данных осуществляется с помощью команды запись из меню файл, это же меню содержит команды просмотр и выход. Команда просмотр предназначена для пролистывания содержимого базы данных. Содержимое базы данных и количество записей в ней отображается в главном окне приложения. Меню правка содержит команды изменить и удалить, предназначенные для редактирования содержимого базы данных. Приложение также содержит справочное окно и инструкцию для пользователя. Для создания и работы с базой данных необходимо использование специальных средств, имеющихся в Visual Basic 6.0 и называемых Data Manager. Эти средства создают объект Data, а также другие объекты, ассоциируемые с базой данных, для работы с ней. Но для простых случаев использование этих средств может оказаться более громоздким, чем создание базы данных с помощью структурного типа данных или массива. Для создания структуры базы данных в простой программе можно описать некоторый структурный тип, который будет иметь все необходимые поля таблицы базы данных. Затем должен быть описан одномерный массив этого типа. А также создана заготовка базы данных и другие объекты для работы с ней, которые могут быть выполнены с помощью общих средств языка Visual Basic 6.0 (операторов присваивания, объектов текстового поля и др.). Т.к. база данных должна быть доступна для многих событийных процедур, разных форм, в т.ч. и для главной формы, то описание структуры, типа и массива этого типа необходимо поместить в раздел general declarations. Это стандартный модуль файла с расширением *.bas, который добавляется к проекту командой Add Module из меню Project. 2. Открыть новый проект. Внешний вид главной формы показан на рис. 71. Задать свойство name формы – glav. Установить необходимые значения основных свойств формы по образцу. Создать на форме операционное меню приложения согласно рис. 71. (См. пр. р. № 5.1) Свойства name выпадающих меню указаны на рис. 71 в рамках меню. Установить на форме 7 меток и 1 список. Свойства name указаны на рисунке рядом с объектами. 3. Добавить к проекту модуль командой Add Module из меню Project. Задать свойство name модуля – basa (рис. 72). При описании структуры типа базы данных, необходимо чтобы в ней были указаны поля, которые соответствуют графам таблицы базы данных (см. табл. 3): Табл. 3
Записать в раздел general declarations модуля basa приложения «УЧЕТ КАДРОВ»: Type kadrrec famnum As String*10 dolnum As String*15 oklnum As String*10 End Type Затем описать в этом же разделе модуля массив базы данных: Public basa(1 To 10) As kadrrec ‘ база данных не более 10 записей 4. Для работы с базой данных потребуются различные текущие признаки, которые будут характеризовать текущее состояние базы данных. Эти признаки обычно присваивают глобальным целым переменным и описывают там же, где и структура, тип и массив базы данных. Добавить в модуль описания этих переменных: Public currec As Integer ‘ текущая запись Public recquant As Integer ‘ количество записей в базе 5. Список в главном окне приложения может показывать всю базу данных, но при этом может и не показывать все ее поля. Список необходимых для показа полей определяется программистом исходя из требований, предъявляемых к приложению. Для того, чтобы в списке в главном окне программы данные полей располагались в виде «правильных» столбцов, необходимо установить для этого списка непропорциональный шрифт, например: Courier или Courier New, в котором на каждый символ отводится одинаковое по ширине место. Открыть главную форму проекта. Установить для объекта список свойство Font – Courier или Courier New, размер шрифта следует подобрать самостоятельно исходя из размеров объекта список. 5. Открыть окно редактора кодов программы для команды меню файл и записать следующий программный код: Private Sub fm1_Click(Index As Integer) Select Case Index Case 1 glav.Enabled=False Sod.Show Case 2 glav.Enabled=False Zapys.Show Case 3 End End Select End Sub 6. Добавить к проекту форму. Задать свойство name формы – zapys. Внешний вид формы показан на рис. 73. Оформить форму по образцу, установить необходимые значения свойств объектов формы согласно рис. 73. 7. Команда запись из меню файл проекта «УЧЕТ КАДРОВ» должна добавлять новую запись в конец базы данных, т.е. в очередной элемент массива, данные этой новой записи, которые вводятся в окне названой команды. Кроме этого, эта команда должна добавлять часть или все введенные данные к списку в главном окне приложения, который специально предназначен для просмотра базы. Имена текстовых полей в окне команды запись не должны (!) совпадать с именами полей базы данных, описанных оператором type. Кнопки ЗАПИСАТЬ и ЗАКРЫТЬ выполняют почти одинаковые действия: кнопка ЗАПИСАТЬ – добавляет данные в базу данных, а кнопка ЗАКРЫТЬ – добавляет данные и закрывает окно. Таким образом, в событийных процедурах этих 2–х кнопок должен быть практически одинаковый текст. Для того, чтобы не дублировать этот текст в 2–х событийных процедурах, он оформляется в виде одной структурной единицы программы: процедуры addrecinput. При этом в указанных событийных процедурах для кнопок имеются лишь строки вызова этой общей процедуры. Общая процедура записывается в модуль проекта. Открыть окно редактора кодов для кнопок ЗАПИСАТЬ и ЗАКРЫТЬ и ввести следующий программный код: Private Sub zap_Click() nomer.Caption=recquant+1 Call addrecinput End Sub Private Sub zakr_Click() nomer.Caption=recquant+1 Call addrecinput Unload zapys glav.Enabled=True Glav.SetFocus End Sub 8. Открыть окно редактора кодов модуля basa и записать описание процедуры: Public Sub addrecinput() Dim strvar As String recquant=Val(glav.vsego.Caption)+1 If recquant<>11 Then zapys.nomer.Caption=recquant basa(recquant).famnum=zapys.fam.Text strvar=basa(recquant).famnum & "" basa(recquant).dolnum=zapys.dol.Text strvar=strvar+basa(recquant).dolnum & "" basa(recquant).oklnum=zapys.okl.Text strvar=strvar+basa(recquant).oklnum Glav.spisok.AddItem strvar zapys.fam.Text="" zapys.dol.Text="" zapys.okl.Text="" Zapys.fam.SetFocus glav.vsego.Caption=recquant Else MsgBox "база заполнена", 16, "нет места" Unload zapys glav.Enabled=True Glav.SetFocus Exit Sub End If End Sub 9. Вернуться в форму Запись. Записать программные коды для событий: загрузка формы и изменение состояния объекта fam (текстовое поле): Private Sub fam_Change() nomer.Caption=recquant+1 End Sub Private Sub Form_Load() recquant=Val(glav.vsego.Caption) End Sub 10. Вернуться в главную форму проекта. Команда удалить из меню правка должна удалять текущую запись базы данных. Для того, чтобы запись стала текущей, нужно выделить ее (щелкнуть по ней мышью) в списке в главном окне программы. При щелчке номер строки передается в свойство ListIndex списка. Команда удалить должна также удалять запись из базы данных, а все последующие записи после удаляемой переписывать на позицию выше. Будьте внимательны! Записи в базе данных нумеруются от 0 до 9, но пользователю на экране отображается нумерация от 1 до 10. Следует этот момент учитывать при реализации событийных процедур для команд запись и удалить, а также при написании других кодов программы, где предполагается вывод содержимого базы данных на экран. Открыть окно редактора кодов для команды операционного меню правка и записать следующий программный код: Private Sub pm1_Click(Index As Integer) Dim i As Integer Select Case Index Case 1 glav.Enabled=False Izmen.Show Case 2 ‘ процедура команды «удалить» If recquant=0 Then MsgBox "база пуста", 16, "удаление невозможно" Exit Sub End If glav.Enabled=True Glav.SetFocus If recquant<>0 Then For i=currec+1 To recquant+1 basa.basa(i-1)=basa.basa(i) basa.basa(i).famnum=" " basa.basa(i).dolnum=" " basa.basa(i).oklnum=" " Next i Spisok.RemoveItem currec-1 recquant=Val(vsego.Caption)-1 vsego.Caption=recquant currec.Caption=" " End If End Select End Sub Записать программные коды для событий: загрузка формы и щелчок по строке в объекте spisok (ListBox) Private Sub Form_Load() recquant=Val(vsego.Caption) End Sub Private Sub spisok_Click() currec=spisok.ListIndex+1 currec.Caption=currec End Sub 11. Добавить к проекту форму. Задать свойство name формы – izmen. Внешний вид формы показан на рис. 74. Оформить форму по образцу, установить необходимые значения свойств объектов формы согласно рис. 74. Команда изменить показывает окно с теми данными базы, которые надо изменить. Таким образом, данные должны быть показаны в текстовых полях. После изменения новые данные должны попасть на то же место в базе данных и на ту же строку в список в главном окне приложения, но не в конец(!) списка и/или базы данных. Открыть окно редактора и записать следующие программные коды для объектов формы izmen: Private Sub pred_Click() Dim a As Integer a=recquant-1 If a<=0 Then MsgBox "вы просмотрели базу до начала", 48, "СТОП" Exit Sub End If recquant=recquant-1 izmen.fam.Text=basa.basa(recquant).famnum izmen.dol.Text=basa.basa(recquant).dolnum izmen.okl.Text=basa.basa(recquant).oklnum izmen.nomer.Caption=recquant End Sub Private Sub sled_Click() Dim a As Integer a=recquant+1 If a>=11 Then MsgBox "вы просмотрели базу до конца", 48, "СТОП" Exit Sub End If recquant=recquant+1 izmen.fam.Text=basa.basa(recquant).famnum izmen.dol.Text=basa.basa(recquant).dolnum izmen.okl.Text=basa.basa(recquant).oklnum izmen.nomer.Caption=recquant End Sub Private Sub zakr_Click() Unload izmen glav.Enabled=True Glav.SetFocus End Sub 12. Поскольку действия, выполняемые кнопкой ОК практически аналогичны действиям, выполняемым кнопкой записать в окне запись, то добавим в модуль проекта еще одну процедуру izmrecinput: Public Sub izmrecinput () Dim strvar As String recquant=izmen.nomer.Caption
|
||||||||||||||||||||
Последнее изменение этой страницы: 2016-12-10; просмотров: 417; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.133.119.247 (0.007 с.) |