`

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

分享到:
评论

相关推荐

    JavaWeb开发 使用WebBrowser控件打印页面demo

    总结起来,JavaWeb开发中使用WebBrowser控件打印页面涉及了多层技术栈的交互,包括Java与.NET的互操作、Windows Forms编程、以及可能的客户端脚本控制。尽管这种方法能提供灵活的打印选项,但在跨平台和安全性方面...

    WebBrowser控件技巧集

    5. **打印功能**:WebBrowser控件提供了打印网页的功能。通过`Print`方法,用户可以直接打印当前显示的网页,而`PrintTemplate`属性则可以定制打印样式。 6. **安全性和隐私**:由于WebBrowser控件基于Internet ...

    vb6_Webbrowser控件使用技巧

    ### vb6_Webbrowser控件使用技巧 #### 一、获得浏览器信息 在Visual Basic 6.0中,可以通过Webbrowser控件获取浏览器的相关信息。具体实现方式如下: 1. **加载网页**: ```vb Private Sub Command1_Click() ...

    asp.net 使用WebBrowser控件浏览网页源码

    在ASP.NET开发中,WebBrowser控件是一个非常实用的工具,它允许开发者在应用程序中集成一个内置的浏览器组件。这个控件不仅可以用来显示HTML页面,还可以执行一些与浏览器相关的操作,比如导航、打印和获取网页源码...

    WebBrowser 打印

    winform 使用webBrowser控件 打印,利用拼接字符串格式填充html标记 并添加javascript 函数 在后台程序中调用

    C#web打印之WebBrowser

    本主题主要探讨的是如何利用C#中的WebBrowser控件实现Web打印功能,特别是在处理销售单等业务场景下的应用。 首先,我们需要理解WebBrowser控件的基本用法。在C#中,通过在窗体上添加WebBrowser控件,可以像浏览器...

    C++实现WebBrowser控件中获取鼠标点击事件和超链接

    在C++编程中,WebBrowser控件是一种常用的组件,它允许开发者在应用程序中嵌入一个浏览器引擎,以显示网页内容并交互。MFC(Microsoft Foundation Classes)是C++的一个库,用于构建Windows应用程序,它提供了封装...

    .NET的WebBrowser控件的的介绍及用法(方法、属性和事件)

    .NET框架中的WebBrowser控件是开发Windows应用程序时用于在应用程序内部嵌入网页浏览功能的工具。这个控件基于Internet Explorer的引擎,使得开发者能够在桌面应用中实现与浏览器类似的功能,如加载网页、执行...

    WEBBrowser 控件 实现浏览器功能

    2. 主要特性:WEBBrowser控件支持导航(加载网页)、前进、后退、停止加载、刷新页面等基本浏览器操作,还可以执行JavaScript代码、打印网页、处理网页事件等高级功能。 二、使用WEBBrowser控件 1. 添加控件:在...

    C#基于WebBrowser控件的浏览器

    【C#基于WebBrowser控件的浏览器】 C#基于WebBrowser控件的浏览器是一个利用.NET Framework中的WebBrowser控件开发的应用程序,它提供了一个类似传统网络浏览器的功能,允许用户输入网址来浏览网页。WebBrowser控件...

    C#打印网页内容

    ### C# 使用 WebBrowser 控件打印网页内容 在.NET Framework 中,C# 语言提供了丰富的控件库,其中 `WebBrowser` 控件是用于显示 HTML 内容的强大工具之一。利用该控件不仅可以加载和浏览网页,还可以实现对网页...

    在VB中使用WebBrowser控件共6页.pdf.zip

    8. **打印网页**:WebBrowser控件还提供了`Print`方法,可以直接打印网页内容。 9. **安全考虑**:使用WebBrowser控件时要注意安全问题,避免加载不受信任的网页,防止XSS攻击和跨站脚本执行。 这个6页的教程可能...

    C# 扩展的比较完整的WebBrowser控件

    `WebBrowser`控件支持打印网页,通过`webBrowser1.Document.Window.Print()`即可调用浏览器的打印功能。 9. **性能优化** 为了提高性能,可以设置`WebBrowser`控件的`Silent`属性为`true`来禁止弹出对话框,或者...

    利用WebBrowser彻底解决Web打印问题(包括后台打印)

    【WebBrowser控件详解及其在Web打印中的应用】 在BS架构的应用中,打印功能的实现往往是一项挑战,尤其是当需求涉及到部分打印和后台批量打印时。本文将介绍如何利用IE内置的WebBrowser控件来解决这些问题,使得...

    用WebBrowse显示PDF和WORD文档

    4. **打印功能**:WebBrowser控件也支持打印功能。通过调用`Print`方法,用户可以直接打印当前显示的文档: ```cpp pBrowser-&gt;ExecWB(OLECMDID_PRINT, OLECMDEXECOPT_DODEFAULT, NULL, NULL); ``` 5. **安全性和...

    打印htmlDoem(调用web控件打印).zip

    总结来说,"打印htmlDoem(调用web控件打印)"这个案例展示了如何在C# WebForm应用中处理Base64编码的HTML,利用WebBrowser控件进行解码、显示和打印HTML内容。这一技术对于那些需要提供在线打印服务的Web应用非常...

    利用IE内置打印控件IEWebBrowser进行打印.

    ### 利用IE内置打印控件IEWebBrowser...通过上述分析,我们可以看到利用IEWebBrowser控件进行打印不仅方便快捷,而且还能实现较为复杂的分页打印控制,这对于需要频繁处理文档打印任务的应用场景来说是非常实用的功能。

    javascript打印如何自定义纸张大小(代码)[借鉴].pdf

    同时,本文还介绍了使用 IE 的 WebBrowser控件来实现打印预览和设置打印纸张大小。 一、问题分析 在实际应用中,打印纸张大小的自定义是一个常见的问题。使用 JavaScript 可以实现打印预览和设置打印纸张大小,但...

    IEJavascript打印功能

    本文详细介绍了两种主要的实现方式:客户端脚本打印方式和WebBrowser控件打印方式。前者适合于需要高度定制化打印内容的应用场景,后者则更加简便易用。开发者可以根据实际需求和技术背景来选择最合适的方案。

Global site tag (gtag.js) - Google Analytics