LB_GETTEXTLEN メッセージ

リスト ボックス内の文字列の長さを取得します。

パラメーター

wParam

文字列の 0 から始まるインデックス。

Windows 95/Windows 98/Windows Millennium Edition (Windows Me) : wParam パラメーターは 16 ビット値に制限されています。 つまり、リスト ボックスには 32,767 個を超えるアイテムを含めることはできません。 項目の数は制限されていますが、リスト ボックス内のアイテムの合計サイズ (バイト単位) は、使用可能なメモリによってのみ制限されます。

lParam

このパラメーターは使用されません。

戻り値

戻り値は、終端の null 文字を除いた文字列の長さ ( TCHARs) です。 特定の条件下では、この値は実際にはテキストの長さを超える可能性があります。 詳細については、「解説」を参照してください。

wParam パラメーターで有効なインデックスが指定されていない場合、戻り値はLB_ERR。

解説

特定の条件下では、戻り値はテキストの実際の長さよりも大きくなります。 これは、ANSI と Unicode の特定の組み合わせで発生します。これは、オペレーティング システムによって、テキスト内に 2 バイト文字セット (DBCS) 文字が存在する可能性があるためです。 ただし、戻り値は、常にテキストの実際の長さと同じ大きさになります。したがって、バッファーの割り当てをガイドするために常に使用できます。 この動作は、アプリケーションで ANSI 関数と Unicode を使用する一般的なダイアログの両方を使用する場合に発生する可能性があります。

テキストの正確な長さを取得するには、メッセージの WM_GETTEXTLB_GETTEXT、または CB_GETLBTEXT 、または GetWindowText 関数を使用します。

リスト ボックスに所有者描画スタイルがあり、 LBS_HASSTRINGS スタイルではない場合、戻り値は常に DWORD のサイズ (バイト単位) です。

要件

要件
サポートされている最小のクライアント
Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー
Windows Server 2003 [デスクトップ アプリのみ]
ヘッダー
Winuser.h (Windows.h を含む)

関連項目

参照

CB_GETLBTEXT

LB_GETTEXT

その他のリソース

GetWindowText

WM_GETTEXT