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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: