画面ハードコピー印刷


ひよこ  2012-10-30 11:23:28  No: 43288  IP: 192.*.*.*

ボタン押下でForm1の画面ハードコピーを印刷できるようにしたいのですが、可能でしょうか??

編集 削除
なんだかな〜  2012-10-30 13:55:31  No: 43289  IP: 192.*.*.*

可能です。

プログラミングの勉強と同時に「質問の仕方」の勉強をされることをお勧めします。

編集 削除
RAD命  2012-10-30 16:49:25  No: 43290  IP: 192.*.*.*

このページのトピックのここと、
http://madia.world.coocan.jp/delphi/Win32API/Cap.htm

ここの掲示板のこのページですね。
https://www.petitmonte.com/bbs/answers?question_id=2174

あと、ここも。
https://www.petitmonte.com/bbs/answers?question_id=6094

↑見たら、自分の初質問だったという…w。
名前が違うのは、ハンドルネームを変えたからで、
Delphi一筋から、C++、C#、Java関係等、言語数種類使うようになり、
RAD環境をこよなく愛用するようになったからだったり。

少し脱線してしまいましたが、
掲示板検索と、ネット検索、Delphiのヘルプをもっと活用すると、
相当に便利ですよ。

ここは、非常に優れたプログラミング情報の宝庫ですから。
自分は、これで相当助けられてます。

編集 削除
Mr.XRAY  2012-10-30 17:01:57  No: 43291  IP: 192.*.*.*

私が書こうと思っていたことを書かれてしまったので.
かわりに,方法を書いておまきす.

(1) 対象となるフォームのハードコピー操作を実行する
(2) コピーされた画像を,ビットマップ等を生成して,そこに格納する
(3) そのビットマップをプリンタに出力する

という手順になると思います.

ただし,コーディングによっては,Windows 3.1, 95, 98, ME, Vista, 7, 8, MAC OS X, Lion 
のいずれか,または複数で期待通りの動作をしないかも知れません.
また,32 bit か,64 bit かによっても同じことが言えるかも知れません.

Delphi のバージョンによっては,ビットマップの扱いに注意が必要かも知れません.

編集 削除
DEKO  2012-10-30 17:10:59  No: 43292  IP: 192.*.*.*

フォームの単純な印刷 (ハードコピー) でよいのなら、

procedure TForm1.Button1Click(Sender: TObject);
begin
//Form1.Printscale := poPrintToFit; // poNone / poPrintToFit / poProportional
  Form1.Print;
end;

TForm の Print メソッドを呼ぶだけです。

編集 削除
DEKO  2012-10-30 17:14:59  No: 43293  IP: 192.*.*.*

> TForm の Print メソッドを呼ぶだけです。
FireMonkey にはないですけどね (^^;A

編集 削除