![]() |
|
|
![]()
|
|
| lyucean |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 33 Регистрация: 3.6.2010 Репутация: нет Всего: нет |
int x1,y1,x2,y2;
int i,j; y1=400; y2=400; TPrinter *Prntr = Printer(); Prntr->BeginDoc(); Prntr->Canvas->Pen->Width=5; Prntr->Canvas->Font->Size=8; Prntr->Canvas->Font->Style.operator >>(fsNormal); int Nn=Prntr->PageWidth/(Form2->StringGrid1->Width-Form2->StringGrid1->DefaultColWidth); for (i=0;i<StringGrid1->RowCount;i++) { x1=200; x2=x1+StringGrid1->ColWidths[0]*Nn; y2=y2+StringGrid1->RowHeights[i]*Nn; for (j=0;j<7;j++) { Prntr->Canvas->Rectangle(x1,y1,x2,y2); Prntr->Canvas->TextOutA(x1+40,y1+40,StringGrid1->Cells[j][i]); if (j!=7-1) { x1=x1+StringGrid1->ColWidths[j]*Nn; x2=x2+StringGrid1->ColWidths[j+1]*Nn; } } y1=y1+StringGrid1->RowHeights[i]*Nn; if(y1>(Prntr->PageHeight+100)) { Prntr->NewPage(); y1=400; y2=400; } } Prntr->EndDoc(); печатает хорошо (таблицы помещаются) немного объясню Form2->StringGrid1->Width-Form2->StringGrid1->DefaultColWidth потому как в StringGrid на одну ячейку больше чем надо на печати. может кто заметит ошибку, я битый час маюсь .. |
|||
|
||||
| smoke_man |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 447 Регистрация: 25.1.2007 Где: Рязань Репутация: 9 Всего: 17 |
Попробывал пример без переделок - все печатает.
Присоединённый файл ( Кол-во скачиваний: 12 )
GridPrint.zip 43,87 Kb-------------------- 0x2b|~0x2b |
|||
|
||||
| lyucean |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 33 Регистрация: 3.6.2010 Репутация: нет Всего: нет |
А разрешение принтера какое стоит? я просто делал, чтоб 300х300 и 600х600 переваривало, пробовал на первом, выходят пустые таблицы. |
|||
|
||||
| smoke_man |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 447 Регистрация: 25.1.2007 Где: Рязань Репутация: 9 Всего: 17 |
Попробывал с разрешением 300х300. Таблицу со значениями печатает. Принтер HP LaserJet 1220 Series PCL.
-------------------- 0x2b|~0x2b |
|||
|
||||
| lyucean |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 33 Регистрация: 3.6.2010 Репутация: нет Всего: нет |
а заказчик говорит не работает я тестил на 600х600 ..пашет |
|||
|
||||
![]()
|
| Правила форума "С++ Builder" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C++ Builder | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |