CPrintDialog クラス
Windows のコモン ダイアログ ボックスである [印刷] ダイアログで提供されるサービスをカプセル化したものです。
class CPrintDialog : public CCommonDialog
メンバー
パブリック コンストラクター
名前 |
説明 |
---|---|
CPrintDialog オブジェクトを構築します。 |
パブリック メソッド
名前 |
説明 |
---|---|
印刷ダイアログ ボックスを表示せずにのプリンター デバイス コンテキストを作成します。 |
|
ダイアログ ボックスを表示し、フォントを選択できるようにします。 |
|
要求されたコピーの数を取得します。 |
|
ダイアログ ボックスを表示せずに、デバイスの既定値を取得します。 |
|
選択したプリンター デバイスの現在の名前を取得します。 |
|
DEVMODE の構造体を取得します。 |
|
選択したプリンター ドライバー プリンタ現在の名前を取得します。 |
|
印刷範囲の開始ページを取得します。 |
|
選択したプリンターのポートの名前は、現在取得します。 |
|
プリンター デバイス コンテキストのハンドルを取得します。 |
|
印刷範囲の最後のページを取得します。 |
|
ドキュメントのすべてのページを印刷するかどうかを判定します。 |
|
照合されたコピーが必要かどうかを判定します。 |
|
ページの指定範囲のみを印刷するかどうかを判定します。 |
|
現在選択されている項目のみを印刷するかどうかを判定します。 |
パブリック データ メンバー
名前 |
説明 |
---|---|
CPrintDialog オブジェクトをカスタマイズするために使われる構造体。 |
解説
共通の印刷ダイアログ ボックスは、Windows の標準に一貫した印刷、印刷設定]ダイアログ ボックスを使用する最も簡単な方法を提供します。
[!メモ]
CPrintDialogEx のクラスは、Windows 2000 の印刷プロパティ シートに提供されるサービスをカプセル化します。詳細については、CPrintDialogEx の概要を参照してください。
CPrintDialog の機能は、両方のセットアップとページ設定にコモン ダイアログ ボックスを提供する CPageSetupDialogの機能に置き換えられました。
フレームワークにアプリケーションの印刷プロセスの多くの部分を処理するために依存する場合があります。この場合、フレームワークは自動的に印刷用のコモン ダイアログ ボックスが表示されます。また、アプリケーションのフレームワークのハンドルの印刷があり、独自の印刷ダイアログ ボックスを使用して共通の印刷ダイアログ ボックスをオーバーライドできます。フレームワークの印刷のタスクを処理するために使用方法の詳細については、" " [印刷中]を参照してください。
フレームワークの干渉せずに印刷を処理するアプリケーションを作成するには、に用意されているコンストラクターで CPrintDialog のクラスを"そのまま"として使用できます。また、CPrintDialog から独自のダイアログ クラスを派生し、必要に応じたコンストラクターを記述できます。どちらの場合も、これらのダイアログ ボックスは、標準の MFC ダイアログ ボックスに似たクラスから派生するため CCommonDialogします。
CPrintDialog のオブジェクトを使用するには、最初に CPrintDialog のコンストラクターを使用してオブジェクトを作成します。ダイアログ ボックスが構築されたら、ダイアログ ボックスのコントロールの値を初期化するに m_pd の構造体の値を設定または変更できます。m_pd の構造は、型 PRINTDLGです。この構造体の詳細については、Windows SDK を参照してください。
hDevMode と hDevNames のメンバーの m_pd の独自のハンドルを指定しなかった場合は、ダイアログ ボックスが完了したときに、これらのハンドルの Windows 関数 GlobalFree を呼び出すください。CWinApp::OnFilePrintSetupに用意されているフレームワークの印刷設定の実装を使用するときのハンドルを解放する必要はありません。ハンドルは CWinApp して保持され、CWinApp's destructor のデストラクターによって解放され。CPrintDialog のスタンドアロンを使用するときのハンドルのみを解放する必要があります。
ダイアログ ボックスのコントロールを初期化したら、ダイアログ ボックスを表示してユーザーが印刷オプションを選択できるように DoModal のメンバー関数を呼び出します。DoModal は、ユーザーが [OK] (IDOK) ボタンと [キャンセル] (IDCANCEL) ボタンのどちらをクリックしたかを返します。
DoModalIDOKがを返す場合、ユーザーに入力された情報を取得するために CPrintDialog のメンバー関数の 1 つを使用できます。
CPrintDialog::GetDefaults のメンバー関数は、ダイアログ ボックスを表示せずに、現在のプリンターの既定値を取得する場合に役立ちます。このメンバー関数は、ユーザーの操作を必要としません。
Windows の CommDlgExtendedError 関数を使用すると、ダイアログ ボックスの初期化中にエラーが発生したかどうかを確認し、そのエラーについての情報を取得できます。この関数の詳細については、Windows SDK を参照してください。
CPrintDialog は、Windows Versions 3.1 以降で配布される COMMDLG.DLL ファイルを使います。
ダイアログ ボックスをカスタマイズするには、CPrintDialog からクラスを派生し、独自のダイアログ テンプレートを作成します。さらに、外部のコントロールからの通知メッセージを処理するためにメッセージ マップを追加します。処理されないメッセージは基本クラスに渡された必要があります。フック関数のカスタマイズは必要ありません。
ダイアログ ボックスが印刷や印刷設定であるかどうかによって同じメッセージを異なる方法で処理するには、各ダイアログ ボックスのクラスを派生させる必要があります。また、印刷設定のボタンが印刷ダイアログ ボックス内に選択した場合、新しいダイアログ ボックスの作成を行う Windows AttachOnSetup 関数をオーバーライドする必要があります。
CPrintDialog の使い方の詳細については、「コモン ダイアログ クラス」を参照してください。
継承階層
CPrintDialog
必要条件
ヘッダー: afxdlgs.h