您身边的软件定制专家--9年开发经验为您护航

18678812288
0531-88887250

查找(替换)对话框在VC中的使用

文章作者:济南软件开发 时间:2016年12月20日

查找(替换)对话框在VC中的使用

 

1.弹出查找(替换)对话框

   CString findString;

   findReplaceDialog = new CFindReplaceDialog;

 

   findReplaceDialog->Create( TRUE, findString, "" );

   

查找(替换)对话框在VC中的使用

 

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步查找对话框就可以响应用户的鼠标点击事件了。


想要了解更多详情欢迎来电咨询18678812288
登陆网址:www.jnydkj.cn。
联系人:王经理。