当前位置:首页 科普知识 CFHookProc

CFHookProc

发布时间:2023-09-14 00:51:08

CFHookProc,函数功能是一个应用程序定义的或库定义的回调函数,函数原型是UINT CALLBACK CFHookProc。

CFHookProc介绍

CFHookProc,函数功能是一个应用程序定义的或库定义的回调函数,函数原型是UINT CALLBACK CFHookProc。

CFHookProc

CFHookProc基本介绍

CFHookProc函数功能

该挂钩函数是一个应用程序定义的或库定义的回调函数,此回调函数与ChooseFont函数一起使用。挂钩函数接收用于Font公共对话框的缺省对话框函数的消息和通告。

LPCFHOOKPROC类型定义了一个指向这种回调函数的指针。CFHOOKProc是一个由应用程序定义的函数名的位置占有者。

CFHookProc函数原型

UINT CALLBACK CFHookProc(HWND hdlg,UINT uiMsg,WPARAM wParam,LPARAM IParam)。

CFHookProc参数

CFHookProchdlg

指向消息所指的Font对话框窗口的句柄。

CFHookProcuiMsg

指定存放的消息。

CFHookProcwParam

指定有关消息的其他信息。精确的意义根据uiMsg参数的值来决定。

IParam:指定有关消息的其他信息。精确的意义根据uiMSg参数的值来决定。如果uiMsg参数表明WM_INITDIALOG消息,则IParam是一个指向CHOOSEFONT结构的指针,该结构含有创建公共对话框时指定的值。

CFHookProc

CFHookProc返回值

如果挂钩函数返回零值,缺省对话框函数处理消息。如果挂钩函数返回一个非零值,缺省对话框函数忽略消息。

CFHookProc其他信息

1 用ChooseFont函数创建一个Font对话框时,可以为对话框函数提供挂钩函数来处理消息。

为使挂钩函数生效,要用传送到对话创建函数的CHOOSEFONT结构,指定IpfnHook成员中挂钩函数的地址和Flags成员中CF_ENABLEHOOK标志。

2 缺省的对话框函数处理WM_INTDIALOG消息后,把它传送给挂钩函数。对于其他消息,挂钩函数首先存放此消息。然后挂钩函数的返回值决定缺省对话函数是否处理消息或忽略它。

如果挂钩函数处理 WM_CTLCOLORDLG信息,它必须返回一个有效的刷子句柄,以刷对话的背景。

总之,如果挂钩函数处理任何一个WM_CTLCOLOR消息,那么必须返回一个有效刷子句柄,以绘制指定控制的背景不须从挂钩函数调用EndDialog函数。相反,挂钩函数能调用PostMessage函数,把带有IDABORT值的一个WM_CDOMMAND信息传送给对话框函数Posting IDABORT关闭对话框,使对话框函数退回FALSE值,若要了解为什么挂钩函数关闭对话框,必须提供挂钩函数和应用程序之间的联系机理。

可以对公共对话框的标准控制面板进行子分类。但是公共对话框函数也可以对控制面板进行子分类。正因如此,必须在挂钩函数WM_INTDIALDG处理消息时对控制面板子分类。这就保证对话框函数设置子分类函数之前,子分类函数接收指定的控制消息。

CFHookProc速查

CFHookProcWindows NT

3.1及以上版本;

CFHookProc

CFHookProcWindows

95及以上版本;

CFHookProcWindows CE

不支持;

CFHookProc头文件

commdlg.h;

CFHookProc库文件

用户自定义。

温馨提示:
本文【CFHookProc】由作者 爱百科 转载提供。 该文观点仅代表作者本人, 自学教育网 信息发布平台,仅提供信息存储空间服务, 若存在侵权问题,请及时联系管理员或作者进行删除。
(c)2008-2025 自学教育网 All Rights Reserved 汕头市灵创科技有限公司
粤ICP备2024240640号-6