Выбрать главу

В качестве связанных объектов управления могут выступать некоторые стандартные объекты Visual Basic, например такое как Text box (текстовое окно).

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

DataField — Определяет имя поля в наборе записей, созданном объектом управления данными.

DataSource — Определяет имя объекта управления данными, с которым связывается элемент управления.

DataChanged — Показывает, было ли изменено содержимое связанного элемента управления.

Таким образом, чтобы добавить связанный элемент управления в приложение, необходимо выполнить следующие действия:

Перетащите необходимый объект управления из панели инструментов на вашу экранную форму и установите требуемые размеры.

Установите свойство DataSource для связи с объектом управления данными.

Установите свойство DataField для связи с требуемым полем набора записей.

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

Data-bound list box,

Data-bound combo box,

Data-bound grid.

Тот факт, что они используются вместе с данными, отражен в самих их названиях. Их детальное описание и примеры использования в приложениях будут рассмотрены в отдельнх уроках.

Источником данных для любого связанного элемента управления всегда является объект управления данными. Когда пользователь при помощи кнопок со стрелками на объекте Data перемещает указатель текущей записи с одной записи на другую, обновление данных в связанных элементах управления происходит автоматически. Любое изменение данных в связанных элементах управления, сделанное пользователем, немедленно отображается в наборе записей и затем в базе данных (если, конечно, не предусмотреть специальных мер).

В таблице 3.3 представлены типы данных, которые могут отображаться в связанных объектах управления.

Таблица 3.3

Название объекта ∙ Типы данных

Picture box ∙ Long Binary

Image ∙ Binary

Label ∙ Text, Numeric, Date

Text box ∙ Text, Numeric, Date

Check box ∙ True/False, Yes/No

List box ∙ Text, Numeric, Date

Combo box ∙ T ext, Numeric, Date

Data bound list box ∙ Text, Numeric, Date

Data bound combo box ∙ Text, Numeric, Date

Data bound grid ∙ Text, Numeric, Date

Masked edit ∙ Text, Numeric, Date

Простое приложение для просмотра полей базы данных

Для демонстрации использования объекта управления данными и связанных элементов управления создадим очень простое приложение, которое, тем не менее, позволит нам просматривать библиографическую информацию из базы данных BIBLIO.MDB. Для этого вы должны последовательно выполнить следующие действия:

1. Откройте новый проект и измените свойство Caption формы Form1 на “Книги по программированию”.

2. Перенесите из панели инструментов на форму объект управления данными Data1.

3. В окне свойств объекта Data1 измените свойство Caption на “Книги”.

4. В окне свойств объекта Data1 установите свойство DatabaseName, как имя файла базы данных с указанием полного пути C: \VB5\BIBLIO.MDB.

5. В окне свойств объекта Data1 определите свойство RecordSource, как следующий SQL-запрос:

SELECT * FROM TITLES, AUTHORS, PUBLISHERS, [TITLE AUTHOR] WHERE TITLES.ISBN = [TITLE AUTHOR].ISBN AND [TITLE AUTHOR].AU_ID = AUTHORS.AU_ID AND TITLES.PUBID= PUBLISHERS.PUBID

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

6. Разместите на форме восемь меток и, соответственно, восемь текстовых окон как показано на рис. 3.6 и установите их свойства следующим образом:

Label1.Сарtion=Название

Text1.DataSource=Data1

Text1.DataField=Title

Label2.Caption=ABTop

Text2.DataSource=Data1

Text2.DataField=Author

Label3.Caption=год издания

Text3.DataSource=Data1

Text3.DataField=Year Published

Label4.Caption=Teмa книги

Text4.DataSource=Data1

Text4.DataField=Subject

Label5.Caption=Описание

Text5.DataSource=Data1

Text5.DataField=Description

LаЬеl6.Caption=Международный код ISBN

Text6.DataSource=Data1

Text6.DataField=TITLES.ISBN

LаЬеl7.Caption=Издательство

Text7.DataSource=Data1

Text7.DataField=Name

LаЬеl8.Caption=Примечание

Text8.DataSource=Data1

Text8.DataField=Notes

Рис. 3.6. Вид экранной формы.

7. Предусмотрим средство для завершения работы приложения. Для этого добавьте на форму командную кнопку, определите ее свойство Caption как “Выход” и установите следующий код в процедуре обработки события Click:

Private Sub Command1 Click ()

Unload Me

End Sub

8. Запустите проект на выполнение выбором команды Start из меню Run, или нажмите клавишу F5. Результат работы программы показан на рис. 3.7. С помощью кнопок со стрелками на объекте управления данными можно перемещать текущий указатель по набору записей и содержимое соответствующих полей будет автоматически отображаться на форме в связанных элементах управления.

9. Закройте приложение нажатием кнопки “Выход”.

Рис. 3.7. Результат работы приложения.

Урок 4

Свойства, методы и события объекта управления данными

Объект Data, как и любой другой элемент управления в Visual Basic, имеет несколько стандартных, общих для многих элементов управления, свойств, методов и событий. Наряду с ними, он имеет целый ряд свойств, методов и событий, предназначенных для работы с данными. Именно они и будут последовательно рассмотрены ниже.

Свойства

• BOFAction

Свойство BOFAction определяет действие объекта Data, если свойство BOF (beginning of file — начало файла) у созданного им набора записей установлено в True.

Синтаксис: data1.BOFaction=value.

Значение value может быть выбрано из двух альтернатив: MoveFirst или BOF.

При создании объекта Data свойство BOFAction устанавливается по умолчанию как MoveFirst. При этом текущей становится первая запись в наборе записей.