Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Печать содержимого формы


Автор: angell 3.7.2005, 09:37
Возникла такая проблема: есть две формы. В главной вводится текстовая информация, а во второстепенной она форматируется определенным образом. Требуется по нажатию кнопки в главной форме распечатать содержимое второстепенной. Сначала использовался следующий код

Form2.PaintTo(Printer.Handle,15,19);
Printer.NewPage;

Но при этом изображение получается маленьким. Поэтому стал использовать другой код:

Printer.Canvas.CopyRect(Rect(X1,Y1,X2,Y2),Form2.Canvas,Rect(0,0,Form2.ClientWidth,Form2.ClientHeight));

По размеру все получилось, но возникла другая проблема, так как кнопка печати расположена в главной форме, то и на принтер выводится главная форма. Размещение кнопки на второстепенной форме не очень, мягко говоря, удобно. Использование копирования канвы порождает и другую проблему: когда нажимаем на кнопку "Печать" появляется стандартное окно печати, которое загораивает собой часть формы и следовательно на принтер эта часть не выводится.
Так вот, может кто-нибудь подскажет как избежать всего этого геморроя?? smile smile

Автор: Alex 3.7.2005, 11:47
http://forum.vingrad.ru/index.php?showtopic=25097&hl=Печать+формы

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)