Механизм создания для сетки DBGrid специальных компонент - объектов-столбцов, облегчает управление отображением данных. С их помощью можно изменять шрифт и цвет колонок, формировать их заголовки и т. д.
Для создания объектов-столбцов нужно вызвать редактор столбцов сетки DBGrid (рисунок 3.26). Для этого необходимо перейти к форме fmNaklsU главного окна и дважды щелкните мышью на соответствующей сетке DBGrid.
Рисунок 3.23 – Окно редактора столбцов
Таблица 3.1 - Значения свойств FieldName, Caption и Size
объектов-столбцов для сеток DBGrid1 и DBGrid2
Field Name | Title/Caption | Width |
Компонент DBGrid1 | ||
NaklId | №накл | |
NData | Дата | |
Firm | Партнер | |
Type | Тип накладной | |
NSum | Сумма | |
NPayedSum | Оплата | |
NRetSum | Возврат | |
NCoeff | Коэффициент | |
NRetDate | Срок | |
Компонент DBGrid2 | ||
Name | Название книги/Автор/Издательство | |
MQuan | Количество | |
MPrice | Цена | |
MSumma | Сумма |
Чтобы создать объект-столбец, нужно щелкнуть на кнопке Add New редактора столбцов или нажать клавишу Ins. Выделив (щелчком) появившийся в окне компонент TColumn, можно с помощью инспектора объектов менять свойства этого компонента.
Раскройте список свойства FieldName редактируемого компонента и выберите поле NaklID. Раскройте список вложенных свойств сложного свойства Title и в его вложенное свойство Caption введите заголовок столбца - № накл. Поместите в свойство Width (Size) ширину колонки 40 (в пикселах экрана). Руководствуясь таблицей 3.1, создайте остальные объекты-столбцы для сеток.
Другим решением является использование кнопки Add All Fields . В результате, в редактор столбцов будут добавлены компоненты TColumn для всех объектов-столбцов, после чего ненужные объекты-столбцы могут быть удалены, а оставшиеся отредактированы.
Если в сетке нужны не все объекты-столбцы, то лишние могут быть удалены.
Для удобства расположения данных в сетке DBGrid, в редакторе столбцов объекты-столбцы можно перемещать вверх и вниз.
Рисунок 3.24 – Заполненное окно редактора столбцов
Внимание! Действует следующее правило: если для сетки DBGrid не создан ни один объект-столбец, в ней отображаются все не "спрятанные" объекты-поля, но если в сетке создан хотя бы один объект-столбец, сетка будет отображать данные только из явно созданных объектов-столбцов.