Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.04.28;
Скачать: CL | DM;

Вниз

Распечатать содержимое Gridа   Найти похожие ветки 

 
Pk   (2003-04-16 17:15) [0]

Использую следуюций код:
printer.BeginDoc;
Printer.canvas.Assign(DBGrid1.Canvas);
Printer.EndDoc;

При этом на принтер посылается задание при выполнении 1 строчки. А вот строчка Printer.canvas.Assign(DBGrid1.Canvas); вызывает исключение(TControlCanvas не может быть скопирован в TPrinterCanvas ). каким образом можно скопировать содержимое DBGrid1.Canvas в Printer.canvas?


 
Babay ©   (2003-04-17 09:18) [1]

вот так у мня сработало...

Var r:TRect;
begin
// размеры в пикселях что бы на листе было все ок их
//надо пересчитывать но это уже другой вопрос
r.Left:=10;r.Top:=10;r.Right:=500;r.Bottom:=300;

printer.BeginDoc;
Printer.canvas.CopyRect(r, DBGrid1.Canvas,dbGrid1.Canvas.ClipRect);
Printer.EndDoc;


 
REA ©   (2003-04-17 10:43) [2]

PaintTo еще часто бывает полезно в таких случаях


 
Pk   (2003-04-17 11:33) [3]

PaintTo распечатывает Grid в виде маленького квадратика который только под микроскопом можно рассмотреть. как можно указать разрешение?


 
REA ©   (2003-04-17 11:41) [4]

Как вариант SetMapMode, SetViewportExtEx
Наверно и проще как-то можно.


 
REA ©   (2003-04-17 11:48) [5]

Можно содрать еще процедуру печати формы TCustomForm.Print;
Вместо FormImage := GetFormImage; вставить получение Bitmap через PaintTo. Жалко Draw нормально не печатает.



Страницы: 1 вся ветка

Текущий архив: 2003.04.28;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.015 c
14-91466
Satirus
2003-04-09 16:35
2003.04.28
Обучение


1-91345
Officeman
2003-04-15 17:55
2003.04.28
про Office2000 - Excel


3-91161
KMI
2003-04-08 19:51
2003.04.28
Несколько паролей


7-91567
DJ_Sedoy
2002-12-31 01:29
2003.04.28
Скрыть программу от Ctrl-Alt-Del в XP


1-91247
Dmitry V. Averuanov
2003-04-16 13:34
2003.04.28
Очень прошу пример DLL