データを読み込み印刷するには?

解決


hirodon  2005-02-12 12:23:36  No: 13171

データベースのデータを印刷したいのですが、
基本的な命令のかかれてある記事が見つかりません。
どなたか教えてください。

たとえば

データ1−1      データ2−1  改行
データ1−2      データ2−2  改行
    ・
    ・
    ・
改ページ

といった処理をしたいのです。
イメージとしては

procedure TForm1.Button1Click(Sender: TObject);
var
  DataCount : Integer;
  PrnCount  : Integer;
begin
  PrnCount := 0
  for DataCount := 1 to Datasauce1.Table1.RecordCount do
  begin
    PrnCount := PrnCount + 1;
    印刷データ1 := DataSauce1.Table1.FieldByName('データ1').AsString;
    印刷データ2 := DataSauce1.Table1.FieldByName('データ2').AsString;
    印刷・改行処理
    if PrnCount = 20 then
    begin
      PrnCount := 0
      改ページ処理
    end
  end;
  印刷終了処理
end;

end.

こんな感じにしたいのですが、
データのセット、改行、改ページについて教えてください


Mr.XRAY  URL  2005-02-13 03:22:43  No: 13172

データベースのデータに限らず,印刷は,MS-DOSの時代にはプリンタに
直接文字や改行コードを送っていました.Windows(Delphi)では,Printer
のCanvas(ここに文字や画像を描画)にデータを描画します.
それには,TPrinterというオブジェクト(クラス)を使用します.
(CanvasについてはTCanasをヘルプで調べてみて下さい)

Printer.BeginDoc;
//印刷コード(Printer.Canvas.TextOut(300,200,'テスト文字列');等

//必要に応じて改頁
Printer.NewPage;

//印刷終了
Printer.EndDoc;

といった感じです.ヘルプのTPrinterのBeginDoc等にコード例があります.

その他,印刷用のコンポーネント等を利用すると,GUIで設計ができます.
一般にプリントユティリティ,レポートツールと呼ばれています.
Delphiに附属のQuickReport,Delhian WorldにLightReport2というものが
があります.その他,サードパティ製もあります.


hirodon  2005-02-13 23:37:56  No: 13173

おかげさまで、印刷できるようになりました。
ありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加