WinForms打印:如何访问进度对话框?
时间:2020-03-06 14:55:05 来源:igfitidea点击:
在Windows窗体中打印或者进行打印预览时,将显示一个对话框,其中包含诸如
[DOC]页[P]
其中[P]是页码,[DOC]是文档的名称。该对话框还包含一个按钮,允许用户取消打印作业。
如何更改显示的文字?我想要的是像这样的文字
[页数]的第[P]页
其中[Pages]是总页数,以向用户指示打印所有页面将花费多长时间。如果可能的话,我也想显示一个进度条,因为当开始打印作业时,我确切地知道要打印多少页。
解决方案
我是这样做的:
- 从PrintDocument派生自己的课程,处理所有打印
- 将打印控制器设置为新的StandardPrintController(然后不显示对话框)
- 显示自己的对话框,例如在OnBeginPrint和OnEndPrint中显示和关闭,在OnPrintPage中更新
如果我没记错的话,就无法更改文本,并且由于默认对话框不可本地化,因此我们无法使用它。不过,它与我在上面写的内容一样正常。