결과를 인쇄 하기 위해, 기본으로 포함된 Fast Report를 사용하려 합니다.
결과를 DB에 저장을 하지 않아서, DB와 연결없이 코드로만 생성 하려 합니다.
인터넷 검색을 하였지만, 원하는 코드를 얻기가 쉽지 안네요
제가 원하는 기능은.
1. 코드로 Chart를 생성한다.
2. 한페이지를 넘어가는 자료를 쓰면, 자동으로 다음 페이지를 생성하고 쓴다.
제가 작성중 코드는 아래와 같습니다. 소스를 첨부 했으니, 힌트라도 부탁 드립니다.
감사 합니다.
// fr3 폼을 이용한다.
// MasterData1 글자를 삽입한다.
TfrxMasterData *DataBand;
// find required bands
DataBand =
dynamic_cast<TfrxMasterData *>(frxReport1->FindObject("MasterData1"));
// add an object on master data
TfrxMemoView *Memo = new TfrxMemoView(DataBand->Parent);
Memo->CreateUniqueName();
Memo->Text = "MasterData1";
Memo->SetBounds(0, 300, 100, 20); //자동으로 페이지가 넘어가지 않음
// adjust the text to the right object’s margin
Memo->HAlign = haRight;
// Chart를 추가한다.
TfrxChartView *frxChart = new TfrxChartView(frxChartObject1);
frxChart->CreateUniqueName();
// frxChart->Chart;
frxChart->SetBounds(100, 300, 8000, 800);
frxChart->Chart->Title->Text->Text = "Name";
frxChart->Chart->View3D = false;
TLineSeries *NewSeries1 = new TLineSeries(frxChart);
TBarSeries *NewSeries2 = new TBarSeries(frxChart);
frxChart->Chart->AddSeries(NewSeries1);
frxChart->Chart->AddSeries(NewSeries2);
NewSeries2->Color = clRed;
NewSeries1->VertAxis = aLeftAxis;
NewSeries2->VertAxis = aRightAxis;
Chart1->Axes->Right->Inverted = true;
NewSeries1->Title = "Test1";
NewSeries2->Title = "Test2 Invert";
NewSeries1->FillSampleValues(50);
NewSeries2->FillSampleValues(50);
// show the report
frxReport1->PrepareReport();
frxReport1->ShowReport(true);
|