*/ 我們都知道,現(xiàn)在的B/S應(yīng)用越來越多,我們做程序的時(shí)候經(jīng)常會(huì)遇到需要打印報(bào)表的情況,但是我們知道我們很難對(duì)IE的客戶端的打印機(jī)進(jìn)行控制,我們除了對(duì)Window.print 的控制以外。沒有其他的任何的辦法,而有的時(shí)候我們又必須是先預(yù)覽,然后打印,有的時(shí)候我們也必須頁面設(shè)置后進(jìn)行打印,怎么辦?
有的朋友可能已經(jīng)發(fā)現(xiàn),在IE的 File 菜單下,這些都是有的,但是怎么通過腳本程序來調(diào)用這些菜單呢? 經(jīng)過CafeCat的Sample的提示,終于發(fā)現(xiàn)使用一個(gè)ActiveX控件是可以實(shí)現(xiàn)這個(gè)功能的,請看下面的Code <OBJECT classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WB width=0></OBJECT> 這個(gè)Object 其實(shí)就是 IEWebBrowser 設(shè)定 Width 和 Height 以后,我們在界面上就看不到控件的形狀了
然后,我們就可以使用 這個(gè)object 實(shí)現(xiàn)我們選紙和預(yù)覽的功能了 <script language="JavaScript"> function doPrintSetup(){ //打印設(shè)置 WB.ExecWB(8,1) } function doPrintPreview(){ //打印預(yù)覽 WB.ExecWB(7,1) }
</script>
當(dāng)然,這樣并不能完全解決客戶端的打印問題,豆腐將在以后的文章中就這個(gè)問題進(jìn)行進(jìn)一步的探討。
|