次の方法で共有


FindTextA 関数 (commdlg.h)

システム定義のモードレス 検索 ダイアログ ボックスを作成します。このダイアログ ボックスでは、ユーザーが検索する文字列と、ドキュメント内のテキストを検索するときに使用するオプションを指定できます。

構文

HWND FindTextA(
  [in] LPFINDREPLACEA unnamedParam1
);

パラメーター

[in] unnamedParam1

型: LPFINDREPLACE

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

戻り値

型: HWND

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

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

備考

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

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

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

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

例については、「テキストの検索」を参照してください。

手記

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

必要条件

要件 価値
サポートされる最小クライアント 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

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

概念

FINDMSGSTRING の

FINDREPLACE を する

FRHookProc の

IsDialogMessage の

リファレンス

RegisterWindowMessage の

ReplaceText の