Delphi World - это проект, являющийся сборником статей и малодокументированных возможностей  по программированию в среде Delphi. Здесь вы найдёте работы по следующим категориям: delphi, delfi, borland, bds, дельфи, делфи, дэльфи, дэлфи, programming, example, программирование, исходные коды, code, исходники, source, sources, сорцы, сорсы, soft, programs, программы, and, how, delphiworld, базы данных, графика, игры, интернет, сети, компоненты, классы, мультимедиа, ос, железо, программа, интерфейс, рабочий стол, синтаксис, технологии, файловая система...
Компоненты для печати TStringGrid и TDBGrid

Оформил: DeeCo

Автор: Жабасов Константин

Часто бывает нужно быстро и без проблем вывести на печать StringGrid и DBGrid. Просто грид, без всяких наворотов. Представленные в этом обзоре компоненты очень простые, но полезные. Надеюсь кому-то помогут.
Печать организована через использование QuickReport.

Freeware component TPrintStringGrid

Вкладка Samples    PrnStringGrid.zip (4.5 K)
Параметры:

  • StringGrid - настраивается на определенный StringGrid.
  • AFont - шрифт клеток которые не fixed.
  • FixedColor - цвет фона у fixed клеток.
  • LightCols и LightRows - это простые StringList'ы, в которых указываются номера столбцов (строк) которые должны быть подсвечены (цвет фона - FixedColor). Это бывает полезно в некоторых случаях.
  • PrintStyle - имеет значения psPreview и psPrint, которые говорят сами за себя. Чтобы запустить печать (предв. Просмотр) вызывается метод Execute.
  • Title - строка заголовка.
  • TitleDate - отображать или нет дату в шапке отчета.
  • TitleFont - шрифт заголовка.
  • TitleLeft - отступ слева строки заголовка.
  • TitleNumPage - отображать или нет номер страницы в шапке (там же где и строка Title) отчета.

 

Freeware component TPrintDBGrid:

Вкладка DataControls    PrnDBGrid.Zip (5.8 K)

Параметры:

Ну DetailFont, DetailHeight, HeaderFont, HeaderHeight думаю объяснять не нандо, они говорят сами за себя. Следует обратить внимание на свойства Result и ResultOnly.
Result это группировать ли записи или нет. Если группировать то отображаются
GroupFooter'ы (не знаю как назвать это по-русски) и на них отображаются количество
таких записей. Хочу отметить. что компонент сам не делает сортировку по полям и того подобные вещи,
таr что если нужно группировать по какому-либо столбцу, отсортируйте свой DataSet сами.
По каким столбцам группировать указывается в свойстве SetOfResultFields. По названию наверно догадались что это множество (set of). К сожалению, заполнение этого свойства делается только в RunTime. Не помню почему, наверное мне нужно было именно так.
Пример:
Имеем DBGrid:

PrintDBGrid1.SetOfResultFields:= [2];
И получаем:
Компонент активизируется методом PrintDBGrid1.Execute;

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

Для печати используется обычный QuickReport. Компоненты сами определяет какую страницу использовать книжную или альбомную. Все "Detail" клетки имеют RightAligment. Если это ненравится можно исправить в исходнике. Конечно компоненты неочень навороченные, просто я написал то что мне нужно было, вот и все. Надеюсь кому-то они помогут. Ну если понравится или не понравится, свои замечания и пожелания пишите мне на ящик (он указан в исходниках). УДАЧИ тебе ALL.

С уважением, Жабасов Константин.

Смотрите также :

Проект Delphi World © Выпуск 2002 - 2004
Автор проекта: ___Nikolay