Есть таблица с произвольным количеством столбцов. Необходимо вывести ее на печать. Использую Cross Не выходит отмасштабировать ее по ширине страницы. Пробую : | Код | void __fastcall TfmLecturerTimeLimiting::frxReport1BeforePrint( TfrxReportComponent *Sender) { if(Sender->Name=="Cross1") { mt->First(); int i = 0,j=0,p=0,c=0; TfrxCrossView *Cross = (TfrxCrossView*)Sender; Variant v1[2],v2[1],v0[1]; while (!mt->Eof) { for(j= 0;j<mt->Fields->Count;j++) { if(mt->Fields->Fields[j]->DisplayLabel[1]=='h')continue; p=mt->Fields->Fields[j]->DisplayLabel.Pos("|"); c=1; v1[1]=""; v2[0]=mt->Fields->Fields[j]->AsString; if(p) { v1[0]=mt->Fields->Fields[j]->DisplayLabel.SubString(1,p-1); v1[1]=mt->Fields->Fields[j]->DisplayLabel.SubString(p+1,p+1); v2[0]=" "+mt->Fields->Fields[j]->AsString+" ";
c=2; } else v1[0]=mt->Fields->Fields[j]->DisplayLabel; v0[0]=i; Cross->AddValue(v0,1, v1,c, v2,1); } mt->Next(); i++; } c=Cross->ColCount(); int w=0; for(i=1;i<c;i++) { w+=Cross->ColumnMemos[i]->Width; } double k=double(Cross->Width-Cross->ColumnMemos[0]->Width)/w; for(i=1;i<c;i++) { Cross->ColumnMemos[i]->Width*=k; }
} }
|
А еще передаю переменную | Код | TfrxVariable *v= frxReport1->Variables->Add(); v->Name="k"; v->Value=k;
|
А как к ней добраться?
|