WM_GETTEXTLENGTH

ウィンドウに関連付けられたテキスト(ウィンドウタイトルやコントロールの内容など)の文字数を取得します。

このメッセージを送信するには SendMessage 関数を使います。

#define  WM_GETTEXTLENGTH    0x000E

wParam = 0;
lParam = 0;

パラメータ

パラメータはありません。

戻り値

テキストの文字数が返ります。この数には終端ヌル文字は含まれません。

解説

DefWindowProc 関数は、ウィンドウに関連付けられたテキストのサイズを返します。ある状態の下では、この値は実際のテキストサイズよりも大きくなる場合があります。これは ANSI 文字列と Unicode 文字列が混合している場合に起こることがあります。OS がテキスト内での DBCS 文字の存在の可能性を考慮していることによります。 ANSI 版関数と Unicode を使用するコモンダイアログをいっしょに使った場合などに起こります。正確なサイズを得るには、 WM_GETTEXT メッセージ送信時の戻り値から取得します。

このメッセージがエディットコントロールに送られると、コントロールの内容のテキストのサイズが取得されます。コンボボックスに送られると、コンボボックスのエディットコントロール(またはスタティックテキスト)の部分のテキストのサイズが取得されます。ボタンコントロールに送られると、ボタン上のテキストのサイズが取得されます。その他のウィンドウに送られると、ウィンドウタイトルのテキストのサイズが取得されます。リストボックスのアイテムのテキストのサイズを取得するには、 LB_GETTEXTLEN メッセージを送信します。

対応情報

Windows 95 以降 / Windows NT 3.1 以降