次の方法で共有


ReplaceTextA 関数 (commdlg.h)

検索する文字列と置換文字列、および検索および置換操作を制御するオプションをユーザーが指定できる、システム定義のモードレス ダイアログ ボックスを作成します。

構文

HWND ReplaceTextA(
  [in, out] LPFINDREPLACEA unnamedParam1
);

パラメーター

[in, out] unnamedParam1

型: LPFINDREPLACE

ダイアログ ボックスの初期化に使用する情報を含む FINDREPLACE 構造体へのポインター。 ダイアログ ボックスでは、この構造を使用して、ユーザーの入力に関する情報をアプリケーションに送信します。 詳細については、次の「解説」セクションを参照してください。

戻り値

型: HWND

関数が成功した場合、戻り値はダイアログ ボックスのウィンドウ ハンドルです。 ウィンドウ ハンドルを使用してダイアログ ボックスと通信したり、ダイアログ ボックスを閉じたりすることができます。

関数が失敗した場合、戻り値は NULL。 拡張エラー情報を取得するには、CommDlgExtendedError 関数を呼び出します。この関数は、次のいずれかのエラー コードを返すことができます。

備考

ReplaceText 関数は、テキスト置換操作を実行しません。 代わりに、ダイアログ ボックス FINDMSGSTRING 登録されたメッセージが、ダイアログ ボックスの所有者ウィンドウのウィンドウ プロシージャに送信されます。 ダイアログ ボックスを作成すると、FINDREPLACE 構造体の hwndOwner メンバーが所有者ウィンドウへのハンドルになります。

ReplaceText呼び出す前に、RegisterWindowMessage 関数を呼び出して、FINDMSGSTRING メッセージの識別子を取得する必要があります。 ダイアログ ボックスの手順では、この識別子を使用して、ユーザーが [次のの検索] ボタン、[の置換] ボタン、または [すべての の置換] ボタン クリックしたとき、またはダイアログ ボックスが閉じているときにメッセージを送信します。 FINDMSGSTRING メッセージの lParam パラメーターには、FINDREPLACE 構造体へのポインターが含まれています。 この構造体の Flags メンバーは、メッセージの原因となったイベントを示します。 構造体の他のメンバーは、ユーザーの入力を示します。

[置換] ダイアログ ボックスを作成する場合は、アプリケーションのメイン メッセージ ループで IsDialogMessage 関数を使用して、Tab キーや ESC キーなどのキーボード入力がダイアログ ボックスで正しく処理されるようにする必要もあります。 IsDialogMessage 関数は、[置換] ダイアログ ボックスがメッセージを処理したかどうかを示す値を返します。

置換 ダイアログ ボックスには、FRHookProc フック プロシージャを指定できます。 フック プロシージャは、ダイアログ ボックスに送信されたメッセージを処理できます。 フック プロシージャを有効にするには、FINDREPLACE 構造体の Flags メンバーに FR_ENABLEHOOK フラグを設定し、lpfnHook メンバーでフック プロシージャのアドレスを指定します。

手記

commdlg.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして ReplaceText を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされる最小サーバー Windows 2000 Server [デスクトップ アプリのみ]
ターゲット プラットフォーム の ウィンドウズ
ヘッダー commdlg.h (Windows.h を含む)
ライブラリ Comdlg32.lib
DLL Comdlg32.dll
API セットの ext-ms-win-shell-comdlg32-l1-1-1 (Windows 10 バージョン 10.0.14393 で導入)

関連項目

CommDlgExtendedError

共通ダイアログ ボックス ライブラリ

概念

FINDREPLACE を する

FRHookProc の

IsDialogMessage の

リファレンス

RegisterWindowMessage の

WM_CTLCOLORDLG