如何:显示打印作业进度

本主题介绍如何向用户显示打印作业进度,并为他们提供取消当前正在进行的打印作业的选项。

概述

打印进度对话框过程通常执行以下功能。

  • 向用户显示打印作业进度。
  • 启动打印处理线程。
  • 显示“ 取消 ”按钮,以便用户可以在打印作业完成之前停止打印作业。

严格地说,打印进度对话框过程必须执行的唯一操作就是向用户显示打印作业进度。 但是,由于上述列表中的其他两个函数密切相关,因此它们也包含在本模块中。

显示打印作业进度

打印进度对话框过程处理以下窗口消息。

  • WM_INITDIALOG

    初始化对话框使用的控件。

  • WM_SETCURSOR

    当用户能够取消打印作业时,将光标设置为指针;当打印作业处于无法取消的点时,将光标设置为等待光标。

  • USER_PRINT_START_PRINTING

    设置打印作业的进度栏参数,并创建打印线程以开始处理打印作业。

    这是特定于应用程序的窗口消息。

  • WM_COMMAND - IDCANCEL

    设置取消事件以告知打印处理线程取消打印作业。

  • USER_PRINT_STATUS_UPDATE

    汇报进度栏和状态文本以显示打印作业的当前状态。

    这是特定于应用程序的窗口消息。

  • USER_PRINT_CLOSING

    设置进度对话框中的结束状态文本以指示打印作业正在关闭。

    这是特定于应用程序的窗口消息。

  • USER_PRINT_COMPLETE

    向用户显示“打印作业已完成”消息,并释放此打印作业中使用的句柄和事件。

    这是特定于应用程序的窗口消息。