Share via


MFC で使われているコールバック関数

Microsoft Foundation クラス ライブラリには、3 つのコールバック関数が表示されます。 これらのコールバック関数は、CDC::EnumObjects、CDC::GrayString、CDC::SetAbortProc に渡されます 例外はコールバック境界を越えてスローできないため、Windows に戻る前に、すべてのコールバック関数で MFC 例外をトラップする必要があることに注意してください。 例外の詳細については、例外に関する記事を参照してください。

CDC::EnumObjects 用コールバック関数
CDC::GrayString 用コールバック関数
CDC::SetAbortProc 用コールバック関数

必要条件

ヘッダー: afxwin.h

CDC::EnumObjects 用コールバック関数

ObjectFunc 名は、アプリケーションが指定した関数名のプレースホルダーです。

構文

int CALLBACK EXPORT ObjectFunc(
    LPSTR lpszLogObject,
    LPSTR* lpData);

パラメーター

lpszLogObject
オブジェクトの 論理属性に関する情報を含む LOGPEN または LOGBRUSH データ構造を指します。

lpData
関数に渡されるアプリケーション提供のデータを指します EnumObjects

戻り値

コールバック関数 intは、. この戻り値はユーザー定義です。 コールバック関数が 0 を返す場合は、 EnumObjects 早期に列挙を停止します。

解説

実際の名前をエクスポートする必要があります。

CDC::GrayString 用コールバック関数

OutputFunc は、アプリケーションが指定したコールバック関数名のプレースホルダーです。

構文

BOOL CALLBACK EXPORT OutputFunc(
    HDC hDC,
    LPARAM lpData,
    int nCount);

パラメーター

hDC
で指定された幅と高さ以上のビットマップを持つメモリ デバイス コンテキストを識別nWidthnHeightしますGrayString

lpData
描画される文字列を指します。

nCount
出力する文字数を指定します。

戻り値

成功を示すには、コールバック関数の戻り値が TRUE である必要があります。それ以外の場合は FAL Standard Edition です。

解説

コールバック関数 (OutputFunc) は、(x, y) ではなく座標 (0,0) を基準にして画像を描画する必要があります。

CDC::SetAbortProc 用コールバック関数

AbortFunc という名前は、アプリケーションが指定した関数名のプレースホルダーです。

構文

BOOL CALLBACK EXPORT AbortFunc(
    HDC hPr,
    int code);

パラメーター

hPr
デバイス コンテキストを識別します。

code
エラーが発生したかどうかを指定します。 エラーが発生しなかった場合は 0 です。 印刷マネージャーが現在ディスク領域を使い切っており、アプリケーションが待機するとより多くのディスク領域が使用可能になる場合は、SP_OUTOFDISKされます。 コードがSP_OUTOFDISKされている場合、アプリケーションは印刷ジョブを中止する必要はありません。 そうでない場合は、Windows 関数をGetMessage呼び出して印刷マネージャーに出力するPeekMessage必要があります。

戻り値

中止ハンドラー関数の戻り値は、印刷ジョブを続行する場合は 0 以外、取り消された場合は 0 です。

解説

実際の名前は、CDC::SetAbortProc の「解説」セクションの説明に従ってエクスポートする必要があります。

関連項目

構造体、スタイル、コールバック関数とメッセージ マップ
CDC::EnumObjects
CDC::SetAbortProc
CDC::GrayString