打印常见问题

打印常见问题

window.print()是执行打印,方法print()也只能window调用才有用
意思是对窗体的整个内容执行打印
所以你要想打印什么内容就给窗体显示什么内容
之前我写的生成图片打开一个新窗体把图片内容写入新窗体进行打印就是这个原理
当然你也可以不用打开一个新窗体直接在原来的窗体将需要打印的内容重新写入窗体
进行打印就行
但之前的打印是出现问题的
虽然打开一个新窗体并重新写入内容成功
但执行打印时却没有内容,所以打印就失败了
现在我就要给大家解决这个问题
首先我们来看一下打印出问题的代码与效果图
代码截图
在这里插入图片描述

选中需要打印的数据进行打印截图

在这里插入图片描述

打印效果图

在这里插入图片描述

可以看到打印的右边是没有数据的
经过我多次试验得出的结论:
出现这个问题的原因可能是弹出打印框的代码执行完成速度比把内容写入窗体的代码执行完成速度要快
所以打印的时候才没有获取到需要打印的内容打印就失败了
解决这个问题的反思路:
获取到需要打印的内容
既然问题出现在代码速度那么我们只需要让弹出打印框的速度比写入内容到窗体的速度慢就行了
这就要用到一次性计时器了,运用一次性计时器让打印的代码延迟触发就行
如下图就是添加计时器后的代码截图
在这里插入图片描述

图中的1000指的是一千毫秒也就是一秒
这里的意思是一秒后再执行打印
我们再来看用了计时器后的打印效果图
在这里插入图片描述

可以看到我们的打印是有内容的
证明我们的执行的方法是正确的
问题就这样解决了根据原理加一个计时器即可

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值