共用方式為


MFC 使用的回呼函式

Microsoft Foundation Class Library 中會出現三個回呼函式。 這些回呼函式會傳遞至 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
識別記憶體裝置內容,其點陣圖至少為 和 所 nWidthnHeightGrayString 指定的寬度和高度。

lpData
指向要繪製的字元字串。

nCount
指定要輸出的字元數。

傳回值

回呼函式的傳回值必須是 TRUE,才能指出成功;否則為 FALSE。

備註

回呼函式 ( OutputFunc ) 必須繪製相對於座標 (0,0) 而非 ( x y ) 的影像。

CDC::SetAbortProc 的回呼函數

AbortFunc 名稱 是應用程式提供之函式名稱的預留位置。

語法

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

參數

hPr
識別裝置內容。

code
指定是否發生錯誤。 如果沒有發生錯誤,則為 0。 如果列印管理員目前磁碟空間不足,如果應用程式等候,則會SP_OUTOFDISK。 如果 程式碼 SP_OUTOFDISK,應用程式就不需要中止列印工作。 如果沒有,它必須藉由呼叫 PeekMessageGetMessage Windows 函式來產生列印管理員。

傳回值

如果列印工作要繼續,則 abort-handler 函式的傳回值為非零值,如果取消,則為 0。

備註

實際名稱必須匯出,如 CDC::SetAbortProc 一節所述。

另請參閱

結構、樣式、回呼和訊息對應
CDC::EnumObjects
CDC::SetAbortProc
CDC::GrayString