Поделиться через


Функции обратного вызова, используемые MFC

В библиотеке классов Microsoft Foundation отображаются три функции обратного вызова. Эти функции обратного вызова передаются в CDC::EnumObjects, CDC::GrayString и CDC::SetAbortProc. Обратите внимание, что все функции обратного вызова должны перехватывать исключения MFC перед возвращением в Windows, так как исключения нельзя создавать через границы обратного вызова. Дополнительные сведения об исключениях см. в статье "Исключения".

Функция обратного вызова для 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
Определяет контекст устройства памяти с растровым изображением по крайней мере ширины и высоты, указанной и nHeight GrayStringв nWidth .

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, приложению не нужно прерывать задание печати. Если это не так, он должен дать диспетчеру печати, вызвав PeekMessage функцию или GetMessage функцию Windows.

Возвращаемое значение

Возвращаемое значение функции прерванного обработчика ненулевое, если задание печати будет продолжаться, и значение 0, если оно отменено.

Замечания

Фактическое имя необходимо экспортировать, как описано в разделе примечания CDC::SetAbortProc.

См. также

Структуры, стили, обратные вызовы и схемы сообщений
CDC::EnumObjects
CDC::SetAbortProc
CDC::GrayString