查找(替换)对话框在VC中的使用
2013-10-28 15:06
134 查看
查找(替换)对话框在VC中的使用
1.弹出查找(替换)对话框
CString findString;
findReplaceDialog = new CFindReplaceDialog;
findReplaceDialog->Create( TRUE, findString, "" );
2.如何实现在点击上图对话框中的“查找下一个”按钮时,查找指定字符?
实现需要进行以下几步:
①自定义一个消息,这个消息必须调用API函数RegisterWindowMessage取得,并且必须指定为FINDMSGSTRING,它是一个宏定义的常量。
UINT findMessage = ::RegisterWindowMessage( FINDMSGSTRING );
② 窗口类中定义:
afx_msg LONG FindFun( UINT wParam, LONG lParam );
③窗口类实现:
LONG xxx类::FindFun( UINT wParam, LONG lParam )
在此中可任意调用findReplaceDialog对话框的类成员函数,用以判断用户在对话框中设置了哪些查询选项和点击了哪个按钮。
BOOL SearchDown() const; // TRUE 向下, FALSE 向上
BOOL FindNext() const; // TRUE 查找下一个
BOOL MatchCase() const; // TRUE 区分大小写
BOOL MatchWholeWord() const; // TRUE 全字匹配
BOOL ReplaceCurrent() const; // TRUE 替换
BOOL ReplaceAll() const; // TRUE 全部替换
④BEGIN_MESSAGE_MAP()
ON_REGISTERED_MESSAGE( findMessage, FindFun )
...
END_MESSAGE_MAP()
经过以上4步查找对话框就可以响应用户的鼠标点击事件了。
1.弹出查找(替换)对话框
CString findString;
findReplaceDialog = new CFindReplaceDialog;
findReplaceDialog->Create( TRUE, findString, "" );
2.如何实现在点击上图对话框中的“查找下一个”按钮时,查找指定字符?
实现需要进行以下几步:
①自定义一个消息,这个消息必须调用API函数RegisterWindowMessage取得,并且必须指定为FINDMSGSTRING,它是一个宏定义的常量。
UINT findMessage = ::RegisterWindowMessage( FINDMSGSTRING );
② 窗口类中定义:
afx_msg LONG FindFun( UINT wParam, LONG lParam );
③窗口类实现:
LONG xxx类::FindFun( UINT wParam, LONG lParam )
在此中可任意调用findReplaceDialog对话框的类成员函数,用以判断用户在对话框中设置了哪些查询选项和点击了哪个按钮。
BOOL SearchDown() const; // TRUE 向下, FALSE 向上
BOOL FindNext() const; // TRUE 查找下一个
BOOL MatchCase() const; // TRUE 区分大小写
BOOL MatchWholeWord() const; // TRUE 全字匹配
BOOL ReplaceCurrent() const; // TRUE 替换
BOOL ReplaceAll() const; // TRUE 全部替换
④BEGIN_MESSAGE_MAP()
ON_REGISTERED_MESSAGE( findMessage, FindFun )
...
END_MESSAGE_MAP()
经过以上4步查找对话框就可以响应用户的鼠标点击事件了。
相关文章推荐
- MySQL定时执行脚本(计划任务)命令实例
- Transformations
- OCP-1Z0-053-V12.02-303题
- 用户体验设计的五项原则
- AgileEAS.NET SOA 中间件平台 5.2 发布说明-包含Silverlight及报表系统的开源代码下载
- FTP上传文件时 System.Net.WebException: 基础连接已经关闭: 接收时发生错误。
- c#中的抽象类和接口
- 使用fdisk命令对linux硬盘进行操作
- CCNA学习指南第六章
- 航显系统提供商产品情况分析-航显系统研究第91篇
- iOS 7的几大改变
- 基于BindingSource的WinForm开发
- mybatis 几种批量操作
- VS008 未能正确加载包“Visual Web Developer HTML Source Editor Package”
- 网页加载顺序
- android的IO系统
- Image tags
- css页面左中右分栏布局示例
- oracle中的国家字符集与数据库字符集的区别
- asp+Access手工注入案例