请输入您要查询的百科知识:

 

词条 CFindReplaceDialog
释义

CFindReplaceDialog类在应用中实现标准字符串查找/替换对话框。不像其它普通的Windows对话框,CFindReplaceDialog对象是非模态的,允许用户与屏幕上的窗口进行交互。有两种CFindReplaceDialog对象:查找对话框和查找/替换对话框。尽管对话框允许用户输入查找/替换对话框,它们并不进行查找或替换,必须在应用中添加。

要构造一个CFindReplaceDialog,可调用提供的构造函数(无参的),因为它是非模态的,用new操作符把它放于堆顶而不放于栈中。

当一个CFindReplaceDialog被构造后,必须调用Create成员函数构造并显示一个对话框。

调用Create之前,用m_fr结构初始化对话框。m_fr的类型为FINDREPLACE。要了解有关此结构的更多信息,可参阅联机文档“Win32 SDK”。

为使父窗口被通知查找/替换请求,必须在框架窗口使用WindowsRegister-WindowMessage 函数并使用ON_REGISTERED_MESSAGE消息映射宏处理登记消息。你可以从框架窗口的回调函数中调用CFindReplaceDialog类成员表中列出的任何成员函数。

可以使用IsTerminating判断用户是否是决定终止对话框。

CFindReplaceDialog依赖Windows3.1以上版本的文件COMMDLG.DLL。

要定制对话框,可从CFindReplaceDialog派生出一个类,提供一个定制对话框模板,加入一个消息映射,从扩展控件中获取通知消息。其它未处理的消息应被传递给基类。

无须定制钩子函数。

#include <afxdlgs.h>

CFindReplaceDialog类的成员

数据成员

m_fr定制CFindReplaceDialog对象的结构 构造函数

CFindReplaceDialog构造一个CFindReplaceDialog对象Create创建并显示一个CFindReplaceDialog对话框 操作

FindNext调用此成员函数决定用户是否想继续查找下一字符串GetNotifier调用此成员函数在登记消息句柄中获得FINDREPLACE结构GetFindString调用此成员函数获得当前找到的字符串GetReplaceString调用此成员函数获得当前替换字符串IsTerminating调用此成员函数决定对话框是否终止MatchCase调用此成员函数决定用户是否想查找完全匹配的字符串MatchWholeWord调用此成员函数决定用户是否只想查找与整个字相匹配的串ReplaceAll调用此成员函数决定用户是否替换所有串ReplaceCurrent调用此成员函数决定用户是否替换当前串SearchDown调用此成员函数决定是否向下查找

CFindReplaceDialog类:封装了标准查找/替换对话框

CFindReplaceDialog::Create 创建一个Find或Find/Replace对话框对象

BOOL Create(BOOL bFindDialogOnly,LPCTSTR lpszFindWhat,LPCTSTR lpszReplaceWhat=NULL,DWORD dwFlag=FR_DOWN,CWnd* pParentWnd=NULL);

参数:bFindDialogOnly 为TRUE时,显示查找对话框,为FALSE时,显示查找/替换对话框;

lpszFindWhat 指定要查找的串的缺省值;

lpszReplaceWhat 指定替换串的缺省值;

dwFlag为标志位,用来定制对话框,它可以是一个或多个标志的组合,主要取值如下:

FR_DOWN 如果设置,对话框中的“向下查找”单选按钮被选中,如果没有设置,“向上查找”单选按钮被选中;

FR_HIDEUPDOWN 不显示查找方向单选按钮;

FR_HIDEMATCHCASE 不显示区分大小写复选按钮;

FR_HIDEWHOLEWORD 不显示全字匹配复选按钮;

FR_MATCHCASE 使区分大小写复选按钮处于选中状态;

FR_WHOLEWORD 使全字匹配复选按钮处于选中状态;

FR_NOMATCHCASE 使区分大小写复选按钮处于禁止(变灰)状态;

FR_NOUPDOWN 使查找方向单选按钮处于禁止(变灰)状态;

FR_NOWHOLEWORD 使全字匹配复选按钮处于禁止(变灰)状态;

FR_SHOWHELP 在对话框中显示一个帮助按钮。

pParentWnd 指向父窗口或属主窗口的指针。

返回值:若创建成功,返回非0值,否则返回0。

CFindReplaceDialog::FindNext 确定用户是否要查找串的下一个出现处

BOOL FindNext()const;

返回值:若用户单击查找“下一个”按钮,则返回非0值,否则返回0。

CFindReplaceDialog::GetFindString 检取对话框中的查找字符串

CString GetFindString()const;

返回值:对话框中的查找字符串

CFindReplaceDialog::GetNotifier 检取当前查找/替换对话框的指针

static CFindReplaceDialog* PASCAL GetNotifier(LPARAM lParam);

参数:lParam 传递给回调函数OnFindReplace()的lParam值

返回值:指向当前查找/替换对话框的指针

CFindReplaceDialog::GetReplaceString 检取对话框中的替换字符串

CString GetReplaceString()const;

返回值:对话框中的替换字符串

CFindReplaceDialog::IsTerminating 检取对话框是否终止

BOOL IsTerminating()const;

返回值:若用户终止对话框,返回非0值,否则返回0

CFindReplaceDialog::MatchCase 检取区分大小写复选按钮状态

BOOL MatchCase()const;

返回值:如果区分大小写复选按钮被选择,返回非0值,否则返回0

CFindReplaceDialog::MatchWholeWord 检取全字匹配复选按钮状态

BOOL MatchWholeWord()const;

返回值:如果全字匹配复选按钮被选择,返回非0值,否则返回0

CFindReplaceDialog::ReplaceAll 确定用户是否要求全部替换

BOOL ReplaceAll()const;

返回值:如果用户要求全部替换,返回非0值,否则返回0

CFindReplaceDialog::ReplaceCurrent 确定用户是否要求替换当前选择串

BOOL ReplaceCurrent()const;

返回值:如果用户要求替换当前选择串,返回非0值,否则返回0

CFindReplaceDialog::SearchDown 检取查找方向

BOOL SearchDown()const;

返回值:如果为向下查找,返回非0值;若为向上查找,返回0

随便看

 

百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。

 

Copyright © 2004-2023 Cnenc.net All Rights Reserved
更新时间:2025/2/4 7:46:11