C-Lodop提示“有窗口已打开,先关闭它(持续如此请刷新页面)!”
c-lodop显示“有窗口已打开,先关闭它(持续如此时请刷新页面)!”
如果连续执行多个预览语句等导致的,可以预先判断一下,并可以自定义修改窗口已打开的提示,该默认提示的位置如本博客的下图http://localhost:8000/CLodopfuncs.js:
通过语句后可修改连续打开窗口导致的提示,在执行打印前判断一下。
会产生本提示的动作语句如下
PREVIEW、PRINT_DESIGN、PRINT_SETUP、PRINTA、GET_DIALOG_VALUE,以上语句需要等待返回,无结果时会有以上提示。其他语句不会有该提示,如:PRINT()。
可能1:有窗口已打开,还没关闭
已打开的窗口被浏览器窗口抢了焦点,遮挡到后面了;
已打开的窗口最小化了;
查看windows任务栏,和浏览器后面,是否窗口最小化或被浏览器遮挡了。
可能2:代码问题,连续执行两个如预览等语句。
可能3:前面的语句执行很慢,结果还没返回又点击了新的打开语句。
如果是前两个窗口问题,也可以使用f (CLODOP.blOneByone==true)判断一下再执行。
按住alt+tab可以查看windows当前打开的应用窗口,仔细查找是否有c-lodop的。
该提示只会在c-lodop产生,如果有窗口已打开,再点击lodop会是禁止点击,点击无效。
测试代码说明:
方法1:正常情况,执行一次打印设计LODOP.PRINT_DESIGN();
方法2;连续执行两个LODOP.PRINT_DESIGN();,会弹出c-lodop本身的提示,该提示在clodopfuncs.js里。
方法3:在打印前,判断一下是否有窗口已经打开了,弹出自定义的提示。
方法4:在打印前,判断一下是否为c-lodop,如果为c-lodop,判断一下是否有窗口已经打开了,弹出自定义的提示。
测试代码:
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>WEB打印控件LODOP</title>
<script language="javascript" src="LodopFuncs.js"></script>
</head>
<body>
<a href="javascript:prn1_preview()">打印设计执行一个正常</a><br>
<a href="javascript:prn2_preview()">打印设计执行两个</a><br>
<a href="javascript:prn3_preview()">打印设计执行两个,已有窗口打开提示,lodop会报错</a><br>
<a href="javascript:prn4_preview()">打印设计已有窗口打开提示2判断是c-lodop再判断</a><br>
<script language="javascript" type="text/javascript">
var LODOP; //声明为全局变量
function prn1_preview() {
LODOP=getLodop();
LODOP.PRINT_INIT("");
LODOP.ADD_PRINT_TEXT(14,27,100,20,"新加文本1");
LODOP.PRINT_DESIGN();
//LODOP.PREVIEW();
};
function prn2_preview() {
LODOP=getLodop();
LODOP.PRINT_INIT("");
LODOP.ADD_PRINT_TEXT(14,27,100,20,"新加文本1");
LODOP.PRINT_DESIGN();
LODOP.PRINT_DESIGN();
//LODOP.PREVIEW();
};
function prn3_preview() {
LODOP=getLodop();
if (CLODOP.blOneByone==true){alert("(ゝω・)先关闭前面的窗口,才能打开新的窗口(ゝω・)。");}
else
{LODOP.PRINT_INIT("");
LODOP.ADD_PRINT_TEXT(14,27,100,20,"新加文本1");
LODOP.PRINT_DESIGN();}
//LODOP.PREVIEW();
};
function prn4_preview() {
LODOP=getLodop();
if (LODOP.CVERSION)
{if (CLODOP.blOneByone==true){alert("(ゝω・)先关闭前面的窗口,才能打开新的窗口。(ゝω・)");}}
else
{LODOP.PRINT_INIT("");
LODOP.ADD_PRINT_TEXT(14,27,100,20,"新加文本1");
LODOP.PRINT_DESIGN();}
};
</script>
图示:

效果:
关于本测试的描述:
1.点击一次,正常情况,弹出一次打印设计。
2.连续执行两个LODOP.PRINT_DESIGN();,会弹出c-lodop的默认提示。
3.点一次后,不关闭再点一次,弹出自己写的判断的自定义提示。
(如果是lodop插件,非c-lodop,这里会报错,注意这个判断只能在c-lodop下使用)
4.点一次后,不关闭再点一次,每次都先判断是否是c-lodop,再判断是否打开了窗口,弹出自己写的判断的自定义提示。
如何只使用c-lodop,可修改needclodop方法返回true,也可用欢迎页面的方式,可参考查看本博客的相关博文:
特别注意:该文中的判断,只使与c-lodop。
而lodop,打开没关窗口会禁止点击,如果代码有两个,会弹出一个,关掉接着弹出第二个。
简短问答:
提示窗口已打开
参考http://www.c-lodop.com/faq/pp27.html
是否有共享打印机,删除共享打印机后,重新安装试试。
(之后又客户共享打印机出问题,也是老提示这个,而且c-lodop的启动界面也出不来,第一次点击就提示,后来远程了下,删除共享打印机后,重新安装就好了。)
C-Lodop提示“有窗口已打开,先关闭它(持续如此请刷新页面)!”的更多相关文章
- QT实现窗口缩放打开与关闭(重叠窗口,太有意思了)
基本思想:假设A为主窗口,B为子窗口.A打开或关闭时,先对A窗口进行截图,然后将图片部满整个B窗口的,在paintEvent里面进行动态缩放或放大画图.最后使用动画,将B窗口以动画的形式打开或关闭,动 ...
- java中窗口的打开与关闭
作为小白的我,今天学习了java中打开与关闭窗口的方法. 1.在java中创建一个窗口 import java.awt.*;import java.awt.event.*;public class L ...
- LODOP提示、报错、现象,简短问答
提示升级提示:“打印控件需要升级!点击这里执行升级,升级后请重新进入."“Web打印服务CLodop需升级!点击这里执行升级,升级后请刷新页面.”(新版提示) 参考http://www.c- ...
- Lodop提示安装或升级的注意事项
LODOP的LodopFuncs.js文件里,自动判断浏览器类型提示下载哪个,根据版本号比较判断提示升级.此文章是以前写的,图示可能过旧,新版提示不同,但是LodopFuncs.js里各个方面变动不大 ...
- 打开office时提示错误窗口“向程序发送命令时出现问题”的解决方案
今天同事问了我一件很怪异的事情,说她的office打不开了,如打开word或excel时,突然出现错误提示错误窗口"向程序发送命令时出现问题",分析原因才知道她安装了 AVG pc ...
- Microsoft Dynamics CRM4.0 JScript 过滤lookup 出现 Microsoft Dynamics CRM 窗口无法打开,可能已被弹出窗口阻止程序所阻止。
一.现象:JScript过滤lookup字段,选择lookup字段出现下图的情况: 出现:Microsoft Dynamics CRM 窗口无法打开,可能已被弹出窗口阻止程序所阻止.请将这台Micro ...
- 【C#】无损转换Image为Icon 【C#】组件发布:MessageTip,轻快型消息提示窗 【C#】给无窗口的进程发送消息 【手记】WebBrowser响应页面中的blank开新窗口及window.close关闭本窗体 【手记】调用Process.EnterDebugMode引发异常:并非所有引用的特权或组都分配给呼叫方 【C#】DataRowState演变备忘
[C#]无损转换Image为Icon 如题,市面上常见的方法是: var handle = bmp.GetHicon(); //得到图标句柄 return Icon.FromHandle(handle ...
- JavaScript窗口打开与关闭及如何使用opener使子窗口对父窗口进行操作
一.打开与关闭窗口 1.打开窗口:可以使用window对象中的Open()方法. newWindow = window.open(url,windowname,location); 参数说明: url ...
- BeyondCompare3 提示许可证密钥已被撤销解决方法
今天对比文件提示 许可证密钥已被撤销:3281-0350! 找过了几个注册码还是不行. 正确简单的解决方法: 1.找到 BCState.xml 文件 2.编辑器打开,删除<TCheckFor ...
随机推荐
- docker 2 docker介绍
docker是基于go语言实现的云开源项目 docker的主要目标是‘build ,ship and run any app,anywhere’,也就是说通过对应用程序组件的封装,分发,部署,运行等生 ...
- face recognition[variations of softmax][L-Softmax]
本文来自<Large-Margin Softmax Loss for Convolutional Neural Networks>,时间线为2016年12月,是北大和CMU的作品. 0 引 ...
- MongoDB的分片集群搭建
MongoDB的最为自豪的一个特色之一,分片. 参考官方文档: https://docs.mongodb.com/manual/sharding/ 单机压力,高频查询CPU,IO 单表压力,百万千万 ...
- Android开发常用权限设置
加在AndroidManifest.xml 文件中manifest标签以内,application以外 例如:<!--网络权限 --> <uses-permission androi ...
- Java系统高并发之Redis后端缓存优化
一:前端优化 暴露接口,按钮防重复(点击一次按钮后就变成禁用,禁止重复提交) 采用CDN存储静态化的页面和一些静态资源(css,js等) 二:Redis后端缓存优化 Redis 是完全开源免费的,遵守 ...
- JVM参数配置 java内存区域
java内存区域 一些基本概念 http://www.importnew.com/18694.html https://www.cnblogs.com/wangyayun/p/6557851.html ...
- Centos7 下SVN迁移
SVN迁移需要做如下操作: 1. 将原来的Repository导出 . #svnadmin dump 原有repos的目录路径 > dumpfile (不同服务器安装目录不同,根据具体情况调整) ...
- python全栈开发慕课网
前端 web框架: flask:简单.轻量.灵活性大 (官网,stck overflowa); 目录结构:配置,发布,资源,日志,测试... 前后端协作:整体发布,前后端分离发布 django:简单, ...
- Tarjan算法(缩点)
因为最近在学2sat,需要学习前置技能—Tarjan算法,所以花了一天的时间学习这个算法 算法步骤: 1.从一个点开始dfs,并加入栈 2.如果下一个点没有到过,跳到第一步 3.如果下一个点到过,并且 ...
- java总结:double取两位小数的多种方法
1.方法一 四舍五入: import java.math.BigDecimal; double f = 111231.5585; BigDecimal b = new BigDecimal(f); d ...