忍者ブログ
適当に日々あったこととか書いてます。
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

int GetWindowTextLength(
HWND hWnd // ウィンドウまたはコントロールのハンドル
);

指定されたウィンドウのタイトルバーテキストの文字数を返します( そのウィンドウがタイトルバーを持つ場合)。
指定したウィンドウがコントロールの場合は、コントロール内のテキストの文字数を返します。
ただし、GetWindowTextLength 関数で他のアプリケーションのエディットコントロールのテキストの長さを取得することはできません。

長いので以下は続きに~


<パラメータ>
・hWnd
 ウィンドウまたはコントロールのハンドルを指定します。

<戻り値>
関数が成功すると、テキストの文字数が返ります。特定の条件の下では、実際のテキスト長よりも大きくなります。詳細については、解説を参照してください。

ウィンドウがテキストを持たない場合は、0 が返ります。拡張エラー情報を取得するには、 関数を使います。

<解説>
この関数は、ターゲットウィンドウが現在のプロセスに所有されている場合には、指定されたウィンドウまたはコントロールに メッセージを送ります。

特定の条件の下で、実際のテキストの長さよりも大きい値が返る場合があります。
これは、特定の ANSI と Unicode が混在している場合に起こる現象で、オペレーティングシステムがテキスト内への DBCS 文字の混在を許容していることが原因です。
いずれにしても、戻り値が実際のテキスト長より小さくなることはないので、この関数の戻り値は、確保するバッファサイズの目安として使用できます。
戻り値が大きくなる現象が見られるのは、アプリケーションが ANSI 関連の関数と Unicode を持つコモンダイアログの両方を使用している場合です。
また、Unicode のウィンドウプロシージャを持つウィンドウに対して ANSI 版の GetWindowTextLength 関数を使った場合や、ANSI のウィンドウプロシージャを持つウィンドウに対して Unicode 版の GetWindowTextLength 関数を使った場合にもこの現象が見られます。ANSI 関連および Unicode 関連の関数の詳細については、「Win32 Function Prototypes」を参照してください。

テキストの正確な長さを取得するには、 メッセージ、 メッセージ、 メッセージ、または GetWindowText 関数を使ってください。

<対応情報>
Windows NT/2000:Windows NT 3.1 以降
Windows 95/98:Windows 95 以降
ヘッダー:Winuser.h で宣言、Windows.h をインクルード
インポートライブラリ:User32.lib を使用
Unicode:Windows NT/2000 は Unicode 版と ANSI 版を実装

引用:ttp://msdn.microsoft.com/ja-jp/library/cc364817.aspx

<使用メモ>
バーにタイトルがあるかないかの取得に使用。
if(GetWindowTextLength(hwnd) > 0){
 // タイトル有
}
って感じ。
PR
この記事にコメントする
お名前
タイトル
文字色
メールアドレス
URL
コメント
パスワード   Vodafone絵文字 i-mode絵文字 Ezweb絵文字
この記事へのトラックバック
この記事にトラックバックする:
カレンダー
03 2025/04 05
S M T W T F S
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
フリーエリア
最新CM
[06/02 Sai]
[04/23 Sai]
[02/02 tuku]
[11/06 sai]
[10/13 Sai]
最新TB
プロフィール
HN:
なりゆき流
性別:
非公開
趣味:
ネトゲ、読書(漫画とか漫画とか漫画とか)
自己紹介:
日々をだらだらと生きております。
バーコード
ブログ内検索
アクセス解析

HTML & CSS Designed by ittuan

忍者ブログ │ [PR]