Студопедия

КАТЕГОРИИ:

АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника


Источники данных




Экранные элементы для работы с СУБД во многом напоминают обычные элементы управления Windows. Они отличаются тем, что предназначены для редактирования полей таблиц, а не переменных программы. В принципе, их можно напрямую подключать к компонентам ТТаblе, однако в системе Delphi 7реализован более гибкий подход — создан компонент промежуточного уровня TDataSource (Источник данных) с панели Data Access (Доступ к данным).

Этот компонент служит посредником между таблицами СУБД и экранными элементами управления. Зачем так сделано? Компонент TDataSource позволяет, во-первых, абстрагироваться от конкретной СУБД. Например, если потребуется сделать многопользовательский справочник по играм, достаточно настроить таблицы на другую, более мощную СУБД с аналогичной схемой базы данных, способную работать в сети. Элементы управления этого не заметят, потому что будут обращаться

к источнику данных, а не к конкретным таблицам.

 

Компоненты для отображения и редактирования данных

Подготовка приложения

Перед тем как закладывать в базу информацию о конкретных играх, надо, очевидно, предварительно ввести названия компаний и жанры игр. Для этого создадим на форме панель инструментов (компонент TToolBar) и разместим на ней четыре кнопки.

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

ПОДСКАЗКАПодберите картинки для кнопок самостоятельно.

Создайте в рамках текущего проекта три новых формы и настройте их так, чтобы они работали в модальном режиме: свойство BorderStyle должно иметь значение bsDialog. Форма formЗ открывается по щелчку на первой кнопке ToolButtonl, форма Form4 — по щелчку на второй кнопке ToolButton2, форма Form5 — по щелчку на третьей кнопке ToolButtonB.

Для вызова форм использовать Showmodal.

Чтобы получить доступ к модулю данных Unit2 из новых модулей, надо указать ссылку на этот модуль в их интерфейсных разделах.

 

Чтобы все внесенные в таблицы изменения были сохранены в базе данных, эти таблицы по окончании работы необходимо закрыть. У каждого класса, описывающего набор данных в Delphi 7, имеется для этого метод Close.

procedureTForml.ToolButtori4Click.(Sender : TObject);

Begin

DataModule2.Articles.Close;

DataModule2.Games.Close;

DaCaModule2 .Genres.Сlose;

DataModule2.Firms.Close;

Close;

end;

 

Компонент Таблица данных (TDBGrid)

Чтобы получить возможность редактировать, добавлять или удалять записи таблицы, писать программный код не требуется. Достаточно разместить на форме form3 компонент TDBGrid с панели Data Controls (Элементы управления данными).

Он во многом напоминает ранее рассмотренный компонент TStringGrid.

Аналогичные действия надо выполнить и с формой Form4, только источником данных лослужит DataModule2.SoLirceGenres.

Пока что в таблицах показываются все поля, в том числе и ключевое поле ID. Так как его значение будет увеличиваться автоматически, отображать это поле и позволять его редактировать на данном этапе не следует.

Столбцы таблицы описываются свойством Columns, представляющим собой коллекцию элементов типа TDBGridColumn. По умолчанию отображаются все столбцы, а с помощью редактора формируется определенный набор. В нашем случае требуется показывать единственное неключевое поле. После добавления в редакторе коллекции элемента TColumn в списке его свойств надо найти свойство FieldName (Имя поля таблицы) и выбрать в раскрывающемся списке для таблицы фирм значение FirmName, а для таблицы жанров — GenreName.

Названия вводят набором с клавиатуры, установив курсор в нужном ноле, добавление записи — нажатием клавиши ВНИЗ. В последнем случае в таблице автоматически добавляется новое пустое поле.

Компонент Навигатор(TDBNavigator)

Для упрощения навигации по таблице (что немаловажно, если в ней очень много записей) в системе Delphi 7 имеется компонент TDBNavigator.

Он обычно размещается на форме под компонентом TOBGrid и привязывается к нему через свойство DataSource. Значение этого свойства должно совпадать со значением такого же свойства связанной таблицы

 

Навигатор позволяет перемещаться по набору записей вперед и назад, переходить к первой и последней записи и выполнять ряд других функций. Функции Навигатора доступны как при щелчках на его кнопках во время работы приложения, так и из Программного кода.

Компонент содержит десять кнопок.


Поделиться:

Дата добавления: 2015-04-11; просмотров: 107; Мы поможем в написании вашей работы!; Нарушение авторских прав





lektsii.com - Лекции.Ком - 2014-2024 год. (0.006 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты