20.09.2007, 10:13 | #1 |
Участник
|
Закрасить shape в отчете
Здравствуйте,господа!
Подскажите пожалуйста,как в отчете можно закрасить шейп,в который еще выводится текст.Типа должно быть ,как в табелях учета рабочего времени ,где подкрашиваются выходные дни. Бекграунд-свойство у шейпа не нашел Спасибо. |
|
20.09.2007, 12:43 | #2 |
Участник
|
А почему именно shape? Чем не устраивает Text - и текст выводится, и background есть.
|
|
20.09.2007, 12:57 | #3 |
Участник
|
Оно то так,но есть шаблон печатный,по нему сделан дизайн отчета.Каждая надпись (точнее число) должна быть именно в отдельной клеточке. То есть,если просто закрасить это число (например 1),а потом это все напечатать на принтер черно-белый,то этой закраски не видно на бумаге. По этому требуется закраска всей области (шейпа),в которой "живет" это число
|
|
20.09.2007, 13:52 | #4 |
Участник
|
Может это поможет. Посмотрите отчет tutorial_ColourLines.
|
|
20.09.2007, 14:14 | #5 |
Участник
|
Ну тогда используйте BITMAP ... закрашивайте хоть диагональными линиями (картинку приготовить надо), правда контрол будет с background-ом... наверное некрасиво будет выглядеть
|
|
20.09.2007, 15:34 | #6 |
Участник
|
|
|
20.09.2007, 16:22 | #7 |
Участник
|
Вот код рисует печать и поверх печати дату. В зависимости от того чья печать разные размеры.
X++: void setStamp() { BankGroup bankGroup; ReportBitmapControl rbcStamp; ReportTextControl rtcData; int width100; int height100; int left100 = 11000; int top100 = 16000; int fontSize; str font; int left100text; int top100text; int bold; ; switch (requesttable.bic_Payer) { case "044525256": width100 = 6100; height100 = 3000; fontSize = 6; left100text = 13600; top100text = 17450; bold = 3; font = "Arial"; break; case "044525466": width100 = 7800; height100 = 4800; fontSize = 8; left100text = 14200; top100text = 17450; bold = 3; font = "Courier"; break; case "044525593": width100 = 7800; height100 = 4800; fontSize = 10; left100text = 14200; top100text = 18500; bold = 3; font = "Arial"; break; case "044525272": width100 = 7100; height100 = 2900; fontSize = 6; left100text = 14200; top100text = 16600; bold = 3; font = "Arial"; break; default: return; } bankGroup = BankGroup::find(requesttable.bic_Payer); if (bankGroup.BankStamp) { rbcStamp = Main.addBitmapControl(); rbcStamp.imageName(bankGroup.BankStamp); rbcStamp.width100mm(width100); rbcStamp.height100mm(height100); rbcStamp.left100mm(left100); rbcStamp.top100mm(top100); rbcStamp.resizeBitmap(true); rtcData = Main.addTextControl(date2str(requestTable.documentDate,2,2,2,2,2,2)); rtcData.top100mm(top100text); rtcData.left100mm(left100text); rtcData.fontSize(fontSize); rtcData.bold(bold); rtcData.font(font); } } Последний раз редактировалось miklenew; 20.09.2007 в 16:26. |
|
|
За это сообщение автора поблагодарили: dreamer (1). |