Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
VB_6.doc
Скачиваний:
97
Добавлен:
01.12.2018
Размер:
3.77 Mб
Скачать

10.3.2. Подключение ado Data к источнику записей.

Для этого снова щелкаем правой клавишей мышки на элементе ADO Data и снова выбираем из появившегося контекстного меню пункт “ADODC Properties”. Вновь открывается окно “Страницы свойств”. Теперь выбираем в нем вкладку “Record Source”.

В изменившем вид окне раскрываем список “Command Type” и выбираем команду adCmdTable, если ADO Data должен получать данные из таблицы. Если он должен получать данные из запроса, (т.е. либо часть таблицы, либо разные поля из разных таблиц), то выбираем команду adCmdText.

Если была выбрана команда adCmdTable, то становится доступным расположенное ниже поле “Table or Stored Procedure Name”. Раскрываем список этого поля и выбираем в нем имя требующейся таблицы, после чего нажимаем “Применить” и Ok.

Если была выбрана команда adCmdText, то становится доступным поле в самом низу окна, предназначенное для ввода запроса на языке SQL. После ввода запроса опять следует нажать “Применить” и Ok.

Теперь наш элемент ADO Data полностью настроен на связь с данными в БД. Он может получать из БД любые данные, хранимые в ней, но эти данные требуется еще визуализировать, т.е. отображать на экране монитора. Значит, нам нужен элемент управления, который мог бы отображать данные, получаемые им от ADO Data. Таким связанным с ADO Data элементом может служить элемент DataGrid. На панели элементов управления его нет. Чтобы расположить его там, нужно, как обычно, в меню “Проект” выбрать пункт “Компоненты” и в открывшемся окне со списком компонентов пометить “Microsoft DataGrid Control 6.0” после чего нажать Ok. Пиктограмма компонента появится на панели элементов управления, Остается обычным способом расположить его на форме. Он, как и MSFlexGrid, представляет собой сетку таблицы, но в отличие от MSFlexGrid позволяет вносить изменения в значения отображаемых данных.

10.3.3. Элемент управления DataGrid.

Для того чтобы элемент DataGrid мог отображать поставляемые ему от ADO Data данные, его нужно связать с ADO Data и настроить не-

которые его свойства.

Чтобы задать требующиеся свойства DataGrid, щелкаем на нем правой клавишей мышки и из появившегося контекстного меню выбираем пункт “Properties”. Открывается окно “Страницы свойств” с достаточно большим числом вкладок. Активной является вкладка “General”. Здесь можно задать имя элемента DataGrid. Большинство остальных свойств уже будут помечены по умолчанию. Чтобы иметь возможность в процессе работы приложения добавлять в таблицу новые записи, следует пометить свойство AllowAddNew, а чтобы можно было удалять ненужные записи, следует пометить свойство AllowDelete. Сделав это, нажимаем Ok. Можно еще перейти на вкладку “Color”, что позволит выбрать цвет фона для элемента DataGrid и цвет выводимых символов. Вкладка “Font”, как обычно, позволяет выбрать шрифт символов. Кстати, свойства “Color” и “Font” можно задавать и для элемента ADO Data, щелкнув на нем правой клавишей мышки, выбрав в контекстном меню пункт “Properties” и далее вкладки “Color” и “Font”.

Итак, свойства DataGrid заданы. Теперь нужно связать его с элементом ADO Data. Это совсем простая процедура. Нужно на форме щелкнуть на элементе DataGrid, в окне его свойств раскрыть список значений свойства DataSource и выбрать в этом списке тот элемент ADO Data, от которого данные должны отображаться на нашем элементе DataGrid. Так как на форме может быть несколько элементов ADO Data и несколько элементов DataGrid, то нужно указывать, какой элемент ADO Data должен быть источником записей для данного элемента DataGrid. Теперь можно запускать приложение на выполнение.

Если требуется модифицировать отображаемую в DataGrid таблицу, нужно щелкнуть правой клавишей мышки на элементе DataGrid и из появившегося контекстного меню выбрать пункт “Edit”. Окно меню свернется и, вроде бы, ничего не произошло. Но если еще раз щелкнуть правой клавишей мышки на DataGrid, то появится совсем иное контекстное меню, пункты которого позволяют вставлять и удалять столбцы, изменять их размеры и т.д.

Если в процессе работы Вы добавляли или удаляли некоторые из полей записей, то перед запуском приложения нужно снова щелкнуть правой клавишей мышки на DataGrid и в контекстном меню выбрать пункт “Retrieve Fields”, чтобы DataGrid перестроил свою сетку в соответствии с изменившейся таблицей (или запросом).

Хотя мы настроили элемент ADO Data на получение данных из одной только таблицы БД, есть возможность программным путем просматривать все таблицы данной БД и результаты запросов. Для этого достаточно разместить на форме командные кнопки по числу таблиц и запросов, хранимых в БД, или создать на форме элемент Menu.

Пусть, например, в базе данных хранится 2 таблицы с именами “Pasport” и “Prof” и один запрос. Расположим на форме 3 командные кнопки и в процедуры обработки их событий Click запишем коды:

Private Sub Command1_Click()

Adodc1.CommandType = adCmdTable

Adodc1. RecordSource = “Pasport”

Adodc1.Refresh

End Sub

Private Sub Command2_Click()

Adodc1.CommandType = adCmdTable

Adodc1.RecordSourc = “Prof”

Adodc1.Refresh

End Sub

Private Sub Command3_Click()

Adodc1.CommandType = adCmdText

Text1.Tex t= InputBox(“Введите SQL-оператор запроса”)

Adodc1.RecordSource = Text1.Text

Adodc1.Refresh

End Sub

После запуска приложения, щелкая на командных кнопках, выводим в DataGrid содержимое таблиц и запросов. В таблицах можно будет корректировать значения полей записей, добавлять или удалять отдельные записи. Если же потребуется изменить запрос, то это придется делать не изменением данных в ячейках DataGrid, а вводом нового запроса в процедуре Command3_Click.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]