LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

LODOP在WEB页面上让客户选择打印机

admin
2023年9月26日 22:4 本文热度 413

获取打印机列表可以放在onload事件里,如过当前是使用的c-lodop,由于websoket链接需要时间,一进入页面可能会报错,被准备好或网页没下载完成等,也可以在点击事件里让用户获取打印机。
之前写过两个在页面选择打印机的博文:
Lodop在页面获取打印机列表 选择打印机预览 
C-Lodop获取打印机列表create_Printer_List(c-lodop独有的方法,集中打印,AO打印可以用这个方法)
都是早期写的博文,搬运到新博客的,没有代码,这里重新介绍一下第一个博文的那种lodop和c-lodop通用的方法,选择打印机也可以不在页面加载的时候获取,点击后获取打印机列表然后选择。
正常情况下点击一次,获取到打印机列表,用户就可以选择打印机了,但是用户也可能手滑或者点了多次等原因,为了避免重新装载打印机到列表里,可以判断为不为空的时候就不再装载了。

在onload理论原来写的这个获取打印机列表方法:(由于之前写过,不再放这个的图)后面的有按钮获取的图。其实和按钮获取的方法是一样的,就是一个在onload理论,一个按钮点击获取。
代码:

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>WEB打印控件LODOP</title>
<script language="javascript" src="LodopFuncs.js"></script>
</head>
选择打印机:
<select id="PrinterList" size="1"></select>  
<a href="javascript:prn1_preview()">打印预览</a><br>
<script language="javascript" type="text/javascript">  
      var LODOP; //声明为全局变量
      window.onload=function(){creatPrintList();}
     
function creatPrintList(){
       LODOP
=getLodop();
       
var iPrinterCount=LODOP.GET_PRINTER_COUNT();
       
for(var i=0;i<iPrinterCount;i++){
             
var option=document.createElement('option');
              option.innerHTML
=LODOP.GET_PRINTER_NAME(i);
              option.value
=i;
           document.getElementById(
'PrinterList').appendChild(option);
       };    
      };
   
function prn1_preview() {
       LODOP
=getLodop();
       LODOP.PRINT_INIT(
"");
       LODOP.SET_PRINTER_INDEX(document.getElementById(
"PrinterList").value);    
       LODOP.SET_PRINT_PAGESIZE(
1,300,500,"");
       LODOP.ADD_PRINT_TEXT(
4,62,150,40,"文字");
       LODOP.PREVIEW();    
   };
</script>
</body>

在点击按钮里获取打印机列表:判断为空,就不再重新装载。
此外在实际应用的时候,考虑到用户可能的操作,都需要加一些判断,如前面的很多在文本框填写,然后打印的博文,都需要判断是否为空,用户也可能什么也不填写就打印等。

代码:

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>WEB打印控件LODOP</title>
<script language="javascript" src="LodopFuncs.js"></script>
<style>
</style>
</head>
<input type="button" value="选择打印机" onclick="creatPrintList()" > <select id="PrinterList" size="1" style="margin-top:10px;"></select>
<input type="button" value="选择打印机" onclick="creatPrintList2()" > <select id="PrinterList2" size="1" style="margin-top:10px;"></select>

<script language="javascript" type="text/javascript">  
var LODOP; //声明为全局变量
function creatPrintList(){
       LODOP
=getLodop();
       
var iPrinterCount=LODOP.GET_PRINTER_COUNT();
       
for(var i=0;i<iPrinterCount;i++){
             
var option=document.createElement('option');
              option.innerHTML
=LODOP.GET_PRINTER_NAME(i);
              option.value
=i;
           document.getElementById(
'PrinterList').appendChild(option);
       };    
      document.getElementById(
'PrinterList').style.display='block';
};

function creatPrintList2(){
   
if (document.getElementById('PrinterList2').innerHTML!="") return;
   
//点第二次以上,在列表已经填充不为空情况下,不再执行后面的代码,直接返回,避免重新装载打印机。
       LODOP=getLodop();
       
var iPrinterCount=LODOP.GET_PRINTER_COUNT();
       
for(var i=0;i<iPrinterCount;i++){
             
var option=document.createElement('option');
              option.innerHTML
=LODOP.GET_PRINTER_NAME(i);
              option.value
=i;
           document.getElementById(
'PrinterList2').appendChild(option);
       };    
      document.getElementById(
'PrinterList2').style.display='block';
      };
   
function prn1_preview() {
       LODOP
=getLodop();
       LODOP.PRINT_INIT(
"");
       LODOP.SET_PRINTER_INDEX(document.getElementById(
"PrinterList").value);    
       LODOP.SET_PRINT_PAGESIZE(
1,300,500,"");
       LODOP.ADD_PRINT_TEXT(
4,62,150,40,"文字");
       LODOP.PREVIEW();    
};
</script>
</body>

图示:


该文章在 2023/9/26 22:04:36 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2024 ClickSun All Rights Reserved