• ベストアンサー

「印刷プレビュー」のボタンの取り付け方(テキストでも可)

お世話になります。 ホームページ作成でページに印刷に関するボタンやテキストをつけたいのですが 印刷プレビューボタン(テキスト)をつけたいですが、検索してもよくわかりません。 印刷はわかりました。 <input type="button" value="印刷ボタン" onclick="print()"> 「ファイル - 印刷プレビュー 」という作業をするところを ページ上にボタン(またはテキスト)をつけたいのです。 上に書いてある「印刷」を行うような動きをさせたいのです。 ブラウザ依存で構いません。 どう書けば良いのでしょうか? 若しくは無理なのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

以下のようにするとできるようですが JScriptのActiveXObjectを使うのでIEのみで動きます。 それ以外のブラウザではエラー回避していますので エラーとはなりませんが動きません。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title>印刷プレビュー</title> <script> function PrintPreview() { if(window.ActiveXObject == null || document.body.insertAdjacentHTML == null) return; var sWebBrowserCode = '<object width="0" height="0" classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></object>'; document.body.insertAdjacentHTML('beforeEnd', sWebBrowserCode); var objWebBrowser = document.body.lastChild; if(objWebBrowser == null) return; objWebBrowser.ExecWB(7, 1); document.body.removeChild(objWebBrowser); } </script> </head> <body> <form name="form"> <input type="button" value="PrintPreview" onclick="PrintPreview();"> </form> </body> </html>

t2fuzzy
質問者

お礼

ご丁寧に<HTML>HTMLから書いて頂いてありがとうございます。 非常に参考になりました。 やはりネスケもIEも一緒にどうにかするのは無理なんですね。

その他の回答 (1)

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

IEだったら以下のようにすれば一応できると思うけど・・ <script type="text/javascript"> <!-- function showPreview(){ var objWsh = new ActiveXObject("WScript.Shell"); objWsh.SendKeys("%FV"); } //--> </script> … <input type="button" value="印刷プレビューボタン" onclick="showPreview()">

t2fuzzy
質問者

お礼

つくってみました。 IEでは動きましたが情報バーが出るのは構わないとしてもセキュリティーソフト(ノートン等)に「悪質なスプリクト」と警告が出るものはちょっと拙いのでこれ以外に方法はないものなのでしょうか? やはりネスケもIEも(バージョンは最新でかまわないのですが)対応で印刷プレビューボタンは無理なのでしょうか? スプリクトを忘れていたのでこう書ける方法として参考になりました。ありがとうございます。