函数功能。该函数创建一个系统定义的无模式对话框,此对话框使用户查找或替代一个串,或执行控制和替代操作。
函数原型:HWND ReplaceText (LPFINDREPLACE Ipfr);
参数:
Ipfr:指向一个包含初始化对话框的信息的FINDREPLACE结构。对话框应用此结构把用户输入的有关信息传送到应用程序。有关更多的信息,见卜列说明部分。
返回值:如果函数调用成功,返回值为对话框的窗口句柄,可以用窗口句柄与对话框联系或关闭它。如果函数调用失败,返回值为NULL。若想获得更多的错误信息,调用CommDlgExError函数,其返回值如下:
CDERR_FINDRESFAILURE CDERR_MEMLOCKFAILURE
CDERR_INITIALIZATION COERR_NOHINSTANCE
CDERR_LOADRESFAILURE CDERR_NOHOOK
CDERR_LOADSTRFAILURE CDERR_BITEMPLATE
CDERR_LOCKRESFAILURE CDERR_STRUCTSIZE
CDERR_MEMALLOCFAILURE FRERR_BUFFERLENGTHZERO
备注:PepIACE Text函数不执行文本替代操作。相反,对话框把FINDSGSTRING 已登记的信息传送到对话框窗口的窗口函数。当创建对话框时,FINDREPLACE结构的hwndowner成员指定该对话框窗口。
调用ReplaceText函数之前,必须调用RegisterWindowMessage函数为FINDSGSTRING信息登记标识。
当用户击点Find Next,Replace ALL按钮时,或当关闭对话框时,对话框函数应用这些标识发送信息。
FINDMSGSTRING信息中的IParam参数含有一个指向FINDREPLACE结构的指针。此结构的Flags成员表明了形式信息的事件。该结构中其他的成员表明用户的输入信息。
如果创建了Replace对话框,必须应用应用程序信息链中的IsDialogMesssage函数来保证对话框能正确处理链盘输入信息,例如Tab键和Esc键。
ISDialogMessage函数返回值表明Replace对话框是否处理信息。
可以为Replace对话枢提供一个FRHookProc挂钩函数,此挂钩函数能处理发送到对话框中的信息。
为使一个挂钩函数生效,可设置FINDREPLACE结构中Flags成员的FR_ENABLEHOOK标志且指定IpfnHook成员中挂钩函数的地址。
速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:不支持;头文件:commdlg.h;库文件:comdlg32.lib:Unicode:在Windows NT环境中实现为Unicode和ANSI两个版本。