次の方法で共有


CFindReplaceDialog::Create

更新 : 2007 年 11 月

bFindDialogOnly の値に応じ、[検索] または [置換] ダイアログ ボックス オブジェクトを作成し、表示します。

virtual BOOL Create(
   BOOL bFindDialogOnly,
   LPCTSTR lpszFindWhat,
   LPCTSTR lpszReplaceWith = NULL,
   DWORD dwFlags = FR_DOWN,
   CWnd* pParentWnd = NULL 
);

パラメータ

  • bFindDialogOnly
    このパラメータを TRUE にすると、Windows 標準の [検索] ダイアログ ボックスを表示します。FALSE にしたときは、Windows 標準の [置換] ダイアログ ボックスを表示します。

  • lpszFindWhat
    検索する文字列を指定します。

  • lpszReplaceWith
    検索した文字列を置換するための既定の文字列を指定します。

  • dwFlags
    ダイアログ ボックスの設定をカスタマイズするための 1 つ以上のフラグを、ビットごとの OR 演算子で組み合わせて指定できます。既定の値は、文末方向への検索を示す FR_DOWN です。これらのフラグの詳細については、Windows SDK の FINDREPLACE 構造体の説明を参照してください。

  • pParentWnd
    ダイアログ ボックスの親ウィンドウまたはオーナー ウィンドウへのポインタ。このウィンドウは、検索、置換動作を要求するための専用メッセージを受け取ります。このパラメータに NULL を指定すると、親ウィンドウはアプリケーション メイン ウィンドウになります。

戻り値

ダイアログ ボックスが正常に作成された場合は 0 以外を返します。それ以外の場合は 0 を返します。

解説

親ウィンドウに検索または置換を要求するには、RegisterWindowMessage 関数を使います。この関数の戻り値は、アプリケーションのインスタンス固有のメッセージ番号です。フレーム ウィンドウには、登録したメッセージを処理するコールバック関数 (次の例では OnFindReplace) を宣言したメッセージ マップのエントリが必要です。以下の例は、CMyRichEditView と名付けられたフレーム ウィンドウ クラスでのメッセージ処理の例です。

// Message handler declared in CMyRichEditView class declaration
protected:
   afx_msg LONG OnFindReplace(WPARAM wParam, LPARAM lParam);
// Register FindReplace window message.
static UINT WM_FINDREPLACE = ::RegisterWindowMessage(FINDMSGSTRING);
// Message map entry to map from message to handler function.
ON_REGISTERED_MESSAGE(WM_FINDREPLACE, &CMyRichEditView::OnFindReplace)

OnFindReplace 関数の内部では、ユーザーの操作を想定し、検索置換の操作をプログラミングします。

使用例

CFindReplaceDialog::CFindReplaceDialog」の例を参照してください。

必要条件

ヘッダー : afxdlgs.h

参照

参照

CFindReplaceDialog クラス

階層図

CFindReplaceDialog::CFindReplaceDialog

その他の技術情報

CFindReplaceDialog のメンバ