GetDlgItemInt 関数 (winuser.h)

ダイアログ ボックス内の指定したコントロールのテキストを整数値に変換します。

構文

UINT GetDlgItemInt(
  [in]            HWND hDlg,
  [in]            int  nIDDlgItem,
  [out, optional] BOOL *lpTranslated,
  [in]            BOOL bSigned
);

パラメーター

[in] hDlg

型: HWND

目的のコントロールを含むダイアログ ボックスのハンドル。

[in] nIDDlgItem

型: int

テキストを翻訳するコントロールの識別子。

[out, optional] lpTranslated

種類: BOOL*

成功または失敗を示します (TRUE は 成功を示し、 FALSE は 失敗を示します)。

このパラメーターが NULL の場合、関数は成功または失敗に関する情報を返しません。

[in] bSigned

種類: BOOL

関数が先頭のマイナス記号のテキストを調べて、符号付き整数値が見つかる場合に返すかどうかを示します (TRUE では 、これを行う必要があり、 FALSE を指定する必要があります)。

戻り値

型: UINT

関数が成功した場合、 lpTranslated が指す変数は TRUE に設定され、戻り値はコントロール テキストの変換された値になります。

関数が失敗した場合、 lpTranslated が指す変数は FALSE に設定され、戻り値は 0 になります。 0 は変換可能な値であるため、戻り値 0 はそれ自体が失敗を示すわけではないことに注意してください。

lpTranslatedNULL の場合、関数は成功または失敗に関する情報を返しません。

bSigned パラメーターが TRUE で、テキストの先頭にマイナス記号 (-) がある場合、GetDlgItemInt はテキストを符号付き整数値に変換します。 それ以外の場合、関数は符号なし整数値を作成します。 この場合、適切な値を取得するには、戻り値を int 型にキャストします。

詳細なエラー情報を得るには、GetLastError を呼び出します。

解説

GetDlgItemInt 関数は、コントロールに WM_GETTEXT メッセージを送信することで、指定したコントロールのテキストを取得します。 関数は、テキストの先頭に余分なスペースを取り除き、10 進数を変換することで、取得したテキストを変換します。 関数は、テキストの末尾に達したとき、または数値以外の文字が検出されると、翻訳を停止します。

変換された値がINT_MAX (符号付き数値の場合) またはUINT_MAX (符号なし番号の場合) より大きい場合、GetDlgItemInt 関数は 0 を返します。

例については、「 モードレス ダイアログ ボックスの作成」を参照してください。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー winuser.h (Windows.h を含む)
Library User32.lib
[DLL] User32.dll
API セット ext-ms-win-ntuser-dialogbox-l1-1-2 (Windows 10 バージョン 10.0.10240 で導入)

関連項目

概念

ダイアログ ボックス

GetDlgCtrlID

GetDlgItem

GetDlgItemText

リファレンス

SetDlgItemInt