データベース環境のあるところで動かしている
プログラムで、QuickReportのプレビュー画面を表示し、
それをSaveすると、qrpファイルができます。
今度はそのファイルだけを全く別の環境に持って行き、
それの部分印刷をしたいのです。
全頁印刷なら
uses qrExtra;
od:tOpenDialog;
として
procedure TfrmMain.Button1Click(Sender: TObject);
var
QRPDevice: TQRPHandler;
begin
if not od.Execute
then exit;
QRPDevice := TQRPHandler.Create;
try
QRPDevice.Filename := od.FileName;
QRPDevice.Preview;
except
end;
end;
だけで、できるのですが
この場合に、頁範囲を指定して印刷することが出来ません。
TQuickPreviewを使うとできるかと思い、
特にデータベース環境を設定せず、
TQuickRepを置いたフォームと
TQuickPreviewを置いた二つのフォームを用意し、
(aQuickRep:TQuickRepとaQuickRPreview:tQuickPreview)
aQuickRep.OnPreviewで、
aQuickPreview.QRPrinter := TQuickPrinter(Sender);として
aQuickPreviewをShow、
aQuickPreviewでファイルを選択し、
aQuickPreview.QRPrinter.Load(ファイル)
とするとプレビューが見れます。
ところが
aQuickPreview.QRPrinter.Print;
で全頁の印刷ならできるのですが、
aQuickRep.PrinterSetUp;
aQuickRep.Print
で頁を指定した印刷ができないのです。
どなたか、QRPファイルの部分印刷をする方法を
ご存じの方いらっしゃいませんか?
バージョンとかがわからない、また、試してもいないのですが、
procedure TQRPrinter.PrintMetafileDirect(
filename : string; frompage, topage : integer);
というのがあるようです。
使えなかったらごめんなさい。
渡辺 wrote:
> どなたか、QRPファイルの部分印刷をする方法を
> ご存じの方いらっしゃいませんか?
> バージョンとかがわからない、
すみません。あせっていました。
Delphi7についてくる、3.0.9です。(Professionalではありません。)
> procedure TQRPrinter.PrintMetafileDirect(
> filename : string; frompage, topage : integer);
> というのがあるようです。
>
残念ながら私のバージョンではこのメソッドは無いようです。
バージョンを先に提示しなかったので、お手数を
かけてしまいました。すみません。