скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Компоненты для печати TStringGrid и TDBGrid



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

Часто бывает нужно быстро и без проблем вывести на печать 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.

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

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






Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook