unit1.cpp

来自「suite component ace report」· C++ 代码 · 共 74 行

CPP
74
字号
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop

#include "Unit1.h"
#include "AceMerge.hpp"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "AcePage"
#pragma link "SctCtrl"
#pragma link "SctRep"
#pragma link "SctVar"

#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
    : TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)
{
  TAceMerge *Merge = new TAceMerge;
  TMemoryStream *Stream = new TMemoryStream;
  TAceFiler *aaf = new TAceFiler;
  TAceViewer  *Viewer = new TAceViewer(Application);

  // Create Report 1 to a file.  Note that these properties
  // could have been set in the Object Inspector  instead of code
  SctReport1->Page->PageSetup->Destination = destFile;
  SctReport1->Page->AceFileName = "ACE1.ACE";
  SctReport1->Prompt = False;
  SctReport1->Run();

  // Create Report 2 to a file.  Note that these properties
  // could have been set in the Object Inspector  instead of code
  SctReport2->Page->PageSetup->Destination = destFile;
  SctReport2->Page->AceFileName = "ACE2.ACE";
  SctReport2->Prompt = False;
  SctReport2->Run();

  // Copy report1, then report 2, then report 1 again
  Merge->LoadFromFile(SctReport1->Page->AceFileName);
  Merge->LoadFromFile(SctReport2->Page->AceFileName);
  Merge->LoadFromFile(SctReport1->Page->AceFileName);

  // Delete the individual ACE Files
  DeleteFile(SctReport1->Page->AceFileName);
  DeleteFile(SctReport2->Page->AceFileName);

  // Save the Merged ACE file to DISK
  Merge->SaveToFile("COMBINED.ACE");

  // Use a Memory Stream to copy the merged ACE file
  // to an AceFiler object for viewing
  Merge->SaveToStream(Stream);
  Stream->Position = 0;
  aaf->LoadFromStream(Stream);
  Stream->Free();

  // Create the viewer form and display the ace file
  Viewer->WindowState = wsMaximized;
  Viewer->SetZoom( az100 );
  Viewer->SetAceFile(aaf->AceFile);
  Viewer->UpdatePage();
  Viewer->Show();

  Merge->Free();

}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?