次の方法で共有


方法: 印刷ジョブの進行状況を表示する

このトピックでは、印刷ジョブの進行状況をユーザーに表示し、現在進行中の印刷ジョブを取り消すオプションをユーザーに提供する方法について説明します。

概要

印刷の進行状況ダイアログ プロシージャは、通常、次の関数を実行します。

  • 印刷ジョブの進行状況をユーザーに表示します。
  • 印刷処理スレッドを開始します。
  • ユーザーが印刷ジョブを終了する前に停止できるように、[ キャンセル] ボタンを表示します。

厳密に言うと、印刷の進行状況ダイアログ ボックスプロシージャで実行する必要があるのは、印刷ジョブの進行状況をユーザーに表示することだけです。 ただし、前の一覧の他の 2 つの関数は密接に関連しているため、このモジュールにも含まれています。

印刷ジョブの進行状況の表示

印刷の進行状況ダイアログ ボックス プロシージャは、次のウィンドウ メッセージを処理します。

  • WM_INITDIALOG

    ダイアログ ボックスで使用するコントロールを初期化します。

  • WM_SETCURSOR

    ユーザーが印刷ジョブを取り消すことができるときにカーソルをポインターに設定し、印刷ジョブが取り消しできない時点にある場合は待機カーソルに設定します。

  • USER_PRINT_START_PRINTING

    印刷ジョブの進行状況バー パラメーターを設定し、印刷ジョブの処理を開始する印刷スレッドを作成します。

    これは、アプリケーション固有のウィンドウ メッセージです。

  • WM_COMMAND - IDCANCEL

    印刷処理スレッドに印刷ジョブを取り消すよう指示する cancel イベントを設定します。

  • USER_PRINT_STATUS_UPDATE

    進行状況バーとステータス テキストを更新して、印刷ジョブの現在の状態を表示します。

    これは、アプリケーション固有のウィンドウ メッセージです。

  • USER_PRINT_CLOSING

    印刷ジョブが終了していることを示す、進行状況ダイアログ ボックスの終了状態テキストを設定します。

    これは、アプリケーション固有のウィンドウ メッセージです。

  • USER_PRINT_COMPLETE

    ユーザーに "印刷ジョブの完了" メッセージを表示し、この印刷ジョブで使用されたハンドルとイベントを解放します。

    これは、アプリケーション固有のウィンドウ メッセージです。