`

WebBrowser控件打印

 
阅读更多

 

 WebBrowser是IE内置的浏览器控件,无需用户下载. 


一、WebBrowser控件 
  <object ID='WebBrowser' WIDTH=0 HEIGHT=0 CLASSID='CLSID:8856F961-340A-11D0-A96B-00C04FD705A2'></object> 
二、WebBrowder控件的方法 
//打印 

WebBrowser1.ExecWB(6,1); 

//打印设置 

WebBrowser1.ExecWB(8,1); 

//打印预览 

WebBrowser1.ExecWB(7,1); 

关于这个组件还有其他的用法,列举如下: 
WebBrowser.ExecWB(1,1) 打开 
Web.ExecWB(2,1) 关闭现在所有的IE窗口,并打开一个新窗口 
Web.ExecWB(4,1) 保存网页 
Web.ExecWB(6,1) 打印 
Web.ExecWB(7,1) 打印预览 
Web.ExecWB(8,1) 打印页面设置 
Web.ExecWB(10,1) 查看页面属性 
Web.ExecWB(15,1) 好像是撤销,有待确认 
Web.ExecWB(17,1) 全选 
Web.ExecWB(22,1) 刷新 
Web.ExecWB(45,1) 关闭窗体无提示 
但是打印是会把整个页面都打印出来的,页面里面有什么东西就打印出来,我们有时候只需要打印数据表格,这时我们就要写一个样式了:把不想打印的部份隐藏起来: 
样式内容: 
<style type="text/css" media=print> 
.noprint{display : none } 
</style> 
然后使用样式就可以: 
<p class="noprint">不需要打印的地方</p> 

代码如下: 

<script language="javascript"> 
function printsetup(){ 
// 打印页面设置 
wb.execwb(8,1); 

function printpreview(){ 
// 打印页面预览 

wb.execwb(7,1); 



function printit() 

if (confirm('确定打印吗?')) { 
wb.execwb(6,6) 


</script> 

<OBJECT classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2" height=0 id=wb name=wb width=0></OBJECT> 
<input type=button name=button_print value="打印" class="noprint" onclick="javascript:printit()"> 
<input type=button name=button_setup value="打印页面设置" class="noprint" onclick="javascript:printsetup();"> 
<input type=button name=button_show value="打印预览" class="noprint" onclick="javascript:printpreview();"> 




---------------------------------------------------------------------- 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> 
<HTML> 
<HEAD> 
<TITLE> New Document </TITLE> 
<META NAME="Generator" CONTENT="EditPlus"> 
<META NAME="Author" CONTENT=""> 
<META NAME="Keywords" CONTENT=""> 
<META NAME="Description" CONTENT=""> 
<script type="text/javascript">   
     var HKEY_Root,HKEY_Path,HKEY_Key;    
     HKEY_Root="HKEY_CURRENT_USER";    
     HKEY_Path="\\Software\\Microsoft\\Internet Explorer\\PageSetup\\";    
         //设置网页打印的页眉页脚为空    
     function PageSetup_Null()   
      {    
        try {    
                var Wsh=new ActiveXObject("WScript.Shell");    
        HKEY_Key="header";    
        Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"");    
        HKEY_Key="footer";    
        Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"");    
        }  catch(e){}    
      }    
      //恢复网页打印的页眉页脚   
      function PageSetup_default()   
      {    
        try {    
                var Wsh=new ActiveXObject("WScript.Shell");    
        HKEY_Key="header";    
        Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"&w&b页码,&p/&P");    
        HKEY_Key="footer";    
        Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"&u&b&d");    
        }  catch(e){}    
      }    

function printsetup(){ 
// 打印页面设置 
wb.execwb(8,1); 

function printpreview(){ 
// 打印页面预览 
PageSetup_Null(); 
wb.execwb(7,1); 



function printit() 

if (confirm('确定打印吗?')) { 
PageSetup_Null(); 
wb.execwb(6,6) 



</script>  
<style type="text/css" media=print> 
.noprint{display : none } 
</style> 
</HEAD> 

<BODY> 
<OBJECT classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2" height=0 id=wb name=wb width=0></OBJECT> 
<input type=button name=button_print value="打印" class="noprint" onclick="javascript:printit()"> 
<input type=button name=button_setup value="打印页面设置" class="noprint" onclick="javascript:printsetup();"> 
<input type=button name=button_show value="打印预览" class="noprint" onclick="javascript:printpreview();"> 
</BODY> 
</HTML> 

---------------------------------------------------------------------- 
注意有可能执行时,会出现没有效果的错误,这时原因是可能你的浏览器限制了active对象的创建,只要取消限制就好了,取消方法如下: 

打开你的ie浏览器internet选项—— 安全—— 自定义级别—— 把对没有标记为安全的activex控件进行初始化和脚本运行 设置为启用

原文来自http://www.cnblogs.com/conquer/archive/2009/06/18/1505655.html

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics