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 を定義します。 encoding-neutral エイリアスの使用を encoding-neutral ではないコードと混在すると、コンパイル エラーまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー commdlg.h (Windows.h を含む)
Library 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