Интернет-журнал "Домашняя лаборатория", 2007 №4
Шрифт:
Событие Reposition происходит, когда запись в наборе записей становится текущей.
Синтаксис: Private Sub Data1 Reposition .
После загрузки объекта Data и открытия соответствующего набора записей, первая запись в наборе становится текущей и происходит событие Reposition. Это событие также происходит, когда пользователь нажимает кнопки на объекте Data для перемещения по набору записей, а также при использовании методов Move или Find. Вообще говоря, применение любых методов, при которых происходит изменение положения текущей записи, вызывает событие Reposition.
В
• Validate
Событие Validate происходит перед изменением положения текущей записи, а так же перед выполнением методов Update (за исключением случая, когда данные сохраняются с помощью метода UpdateRecord), Delete, Unload, или Close.
Синтаксис: Private Sub Data1 Validate (Action As Integer, Save As Integer)
Аргумент Save определяет состояние связанных элементов управления. Если аргумент Save установлен в True, то содержимое связанных элементов управления было изменено. Если же аргумент Save установлен в False, то никаких изменений в связанных элементах управления не произошло.
Аргумент Action определяет действие, которое вызвало событие Validate. Возможные значения этого параметра и их краткие описания приведены в следующей таблице.
Постоянная • Значение • Описание
vbDataActionCancel • 0 • Отменяет операцию при выходе из процедуры обработки события.
vbDataActionMoveFirst • 1 • Нажата кнопка перехода к первой записи на объекте Data или применен метод MoveFirst объекта Recordset.
vbDataActionMovePrevious • 2 • Нажата кнопка перехода к предыдущей записи на объекте Data или применен метод MovePrevious объекта Recordset.
vbDataActionMoveNext • 3 • Нажата кнопка перехода к следующей записи на объекте Data или применен метод MoveNext объекта Recordset.
vbDataActionMoveLast • 4 • Нажата кнопка перехода к последней записи на объекте Data или применен метод MoveLast объекта Recordset.
vbDataActionAddNew • 5 • Применен метод AddNew объекта Recordset или указатель текущей записи перемещен за конец файла при установленном свойстве EOFAction объекта Data в AddNew.
vbDataActionUpdate • 6 • Применен метод Update объекта Recordset (но не UpdateRecord объекта Data).
vbDataActionDelete • 7 • Применен метод Delete объекта Recordset.
vbDataAction • 8 • Применен один из методов Find объекта Recordset.
vbDataActionBookmark • 9 • Изменено свойство Bookmark объекта Recordset.
vbDataActionClose • 10 • Применен метод Close объекта Recordset.
vbDataActionUnload • 11 • Выгружена экранная форма, содержащая объект управления данными.
В
Примером обработки события Validate можно найти в уже рассмотренном ранее проекте, посвященном применению метода UpdateControls. Только теперь, вместо метода UpdateControls для отмены результатов редактирования, вы можете использовать установку аргумента Action в vbDataActionC ancel:
Private Sub Data1_Validate(Action As Integer, Save As Integer) If Save=False Then Exit Sub End If
If MsgBox("Coxpaнить сделанные изменения",vbYesNo,"","",0)=vbNo Then
Action=vbDataActionCancel
Exit Sub
End If
End Sub
Урок 5
Элемент управления Data и объекты доступа к данным
Использование объекта управления данными позволяет быстро создавать простые приложения для работы с базами данных практически без написания кода, только при помощи соответствующих установок его свойств и применения его методов. Для отображения информации на экранной форме используются связанные элементы управления. Однако, для повышения функциональности разрабатываемого приложения вам, скорее всего, придется все-таки писать код. К счастью, Visual Basic 5 обеспечивает очень широкие возможности для программирования операций с данными. В следующих разделах этой главы описана лишь небольшая часть из чрезвычайно широкого сервиса, предоставляемого разработчику системой Visual Basic 5. Более полно и подробно использование в приложениях объектов доступа к данным изложено в последующих уроках.
Перемещение по набору записей с использованием Моvе-методов
Ранее было показано, как перемещаться от записи к записи в базе данных с использованием кнопок со стрелками на объекте управления данными. В этом разделе обсуждаются способы перемещения по базе данных с использование методов объекта Recordset, созданного объектом Data, то есть с помощью программного кода.
Следующая таблица показывает, вызов какого из методов объекта Recordset эквивалентен нажатию кнопки со стрелкой на объекте управления данными.
Куда переместить указатель текущей записи • Использование метода Move
К первой записи • Data1.Recordset.MoveFirst
К предыдущей записи • Data1.Recordset.MovePrevious
К следующей записи • Data1.Recordset.MoveNext
К последней записи • Data1.Recordset.MoveLast
При разработке приложений часто возникает необходимость перемещения к первой или последней записи в наборе записей. Например, если вам требуется запрограммировать процедуру поиска записи, содержащей какое-либо значение, вполне естественным условием будет начинать поиск с первой строки.