Ниже перечислен список событий, которые вы можете использовать для настройки атрибутов шрифта и цвета ячейки перед тем, как данные будут напечатаны. В момент вызова всех нижеперечисленных событий DataSet уже будет находиться на записи, которую нужно напечатать, так что вы можете обращаться к значениям полей записи используя метод TDataSet.FieldByName(..).Value. Не меняйте свойства грида или колонок внутри этих событий. Это может привести к зацикливанию программы.
TDBGridEh.OnDrawColumnCell
Исппольщуйте событие OnDrawColumnCell чтобы перегрузить стандартный метода печати ячеки. Это событие вызывается после стандартной печати, так что информация будет печататься поверх стандартно-напечатанного содержимого ячеки. Вы можете напечатать дополнительные данные, используя методы класса TDBGridEh(Sender).Canvas.
TDBGridEh.OnDrawDataCell
Не используйте это событие. Оно объявлено в целах совместимости с предыдущими версиями грида.
TColumnEh.OnAdvDrawDataCell
Используйте это событие, чтобы нарисовать данные в ячейки данных грида. В коде события установите Processed в true чтобы определить что вы обработали процесс прорисовки. Иначе грид вызовет метод для прорисовки содержимого ячеки по умолчанию. Вы можете, если необходимо, изменить параметры ARect и Params и вызвать Grid.DefaultDrawColumnDataCell либо оставить Processed в состоянии False и не вызывать Grid.DefaultDrawColumnDataCell. Для изменения параметров вывода данных на экран используйте параметры события Params или Grid.Canvas если вы выводите данные в ячейку сами через функции GDI.
TDBGridEh.OnGetCellParams
TColumnEh.OnGetCellParams
Если при печати и редактировании ячейки данных необходимо только изменить атрибуты текста или цвет, то лучше использовать событие OnGetCellParams. Вы можете написать обработчик события TDBGridEh.OnGetCellParams для выставления свойств шрифта, цвета и других параметров ячейки перед обрисовкой данных в ячейке. Если вы хотите изменить атрибуты ячейки только в определенном столбце, вы можете использовать событие столбца TColumnEh.OnGetCellParams. В этом событии вы можете менять шрифт, цвет, выравнивание, ImageIndex, Text или State для checkbox'а а также поменять такие свойства параметра Params как:
BlankCell: Boolean. Используйте свойство чтобы отобразить ячейку как пустую ячейку с 3D окантовкой.
SuppressActiveCellColor: Boolean. Установите это свойство, чтобы запретить цвету активной ячейки перекрывать цвет установленный в свойстве Background.
TextEditing: Boolean. Установите это свойство чтобы запретить отображение текстового редактора в ячейке колонки грида.