方法: 印刷ジョブの進行状況を表示する
このトピックでは、印刷ジョブの進行状況をユーザーに表示し、現在進行中の印刷ジョブを取り消すオプションをユーザーに提供する方法について説明します。
概要
印刷の進行状況ダイアログ プロシージャは、通常、次の関数を実行します。
- 印刷ジョブの進行状況をユーザーに表示します。
- 印刷処理スレッドを開始します。
- ユーザーが印刷ジョブを終了する前に停止できるように、[ キャンセル] ボタンを表示します。
厳密に言うと、印刷の進行状況ダイアログ ボックスプロシージャで実行する必要があるのは、印刷ジョブの進行状況をユーザーに表示することだけです。 ただし、前の一覧の他の 2 つの関数は密接に関連しているため、このモジュールにも含まれています。
印刷ジョブの進行状況の表示
印刷の進行状況ダイアログ ボックス プロシージャは、次のウィンドウ メッセージを処理します。
WM_INITDIALOG
ダイアログ ボックスで使用するコントロールを初期化します。
WM_SETCURSOR
ユーザーが印刷ジョブを取り消すことができるときにカーソルをポインターに設定し、印刷ジョブが取り消しできない時点にある場合は待機カーソルに設定します。
USER_PRINT_START_PRINTING
印刷ジョブの進行状況バー パラメーターを設定し、印刷ジョブの処理を開始する印刷スレッドを作成します。
これは、アプリケーション固有のウィンドウ メッセージです。
WM_COMMAND - IDCANCEL
印刷処理スレッドに印刷ジョブを取り消すよう指示する cancel イベントを設定します。
USER_PRINT_STATUS_UPDATE
進行状況バーとステータス テキストを更新して、印刷ジョブの現在の状態を表示します。
これは、アプリケーション固有のウィンドウ メッセージです。
USER_PRINT_CLOSING
印刷ジョブが終了していることを示す、進行状況ダイアログ ボックスの終了状態テキストを設定します。
これは、アプリケーション固有のウィンドウ メッセージです。
USER_PRINT_COMPLETE
ユーザーに "印刷ジョブの完了" メッセージを表示し、この印刷ジョブで使用されたハンドルとイベントを解放します。
これは、アプリケーション固有のウィンドウ メッセージです。