ウインドウに関する情報を取得する
ウインドウに関する情報を取得するサンプルです。
サンプルの実行画面
ソースコード
[GetWindowLong.frm]
'GetWindowLong =>ウインドウに関するデータを取得 '<引数> 'hWnd: ウインドウのハンドル 'nIndex: 定数(GWL_××参照) '@戻り値@ '定数で指定した値 Private Declare Function GetWindowLong Lib "USER32" Alias "GetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long) As Long Const GWL_HINSTANCE = (-6) 'インスタンスハンドルを取得 Const GWL_HWNDPARENT = (-8) '親ウインドウのハンドルを取得 Const GWL_ID = (-12) 'ウインドウのIDを取得 Const GWL_EXSTYLE = (-20) '拡張ウインドウスタイルを取得 Const GWL_STYLE = (-16) 'ウインドウスタイルを取得 Const GWL_USERDATA = (-21) 'ユーザー定義の32ビット値を取得 Private Sub Command1_Click() Call nGet(Form1.hWnd, GWL_HINSTANCE) Call nGet(Form1.hWnd, GWL_HWNDPARENT) Call nGet(Form1.hWnd, GWL_ID) Call nGet(Form1.hWnd, GWL_EXSTYLE) Call nGet(Form1.hWnd, GWL_STYLE) Call nGet(Form1.hWnd, GWL_USERDATA) End Sub '----------------------------------------- '■関数名 nGet '■用途 ウインドウに関するデータを取得 '■引数 ' nhWnd:ウインドウのハンドル ' Item:定数(GWL_××参照) '----------------------------------------- Private Sub nGet(nhWnd As Long, Item As String) Dim Ret As Long Ret = GetWindowLong(nhWnd, Item) 'If Ret <> 0 Then Select Case Item Case GWL_HINSTANCE List1.AddItem "インスタンスハンドル" & vbTab & vbTab & Ret Case GWL_HWNDPARENT List1.AddItem "親ウインドウのハンドル" & vbTab & Ret Case GWL_ID List1.AddItem "ウインドウのID" & vbTab & vbTab & Ret Case GWL_EXSTYLE List1.AddItem "拡張ウインドウスタイル" & vbTab & Ret Case GWL_STYLE List1.AddItem "ウインドウスタイル" & vbTab & vbTab & Ret Case GWL_USERDATA List1.AddItem "ユーザー定義の32ビット値" & vbTab & Ret End Select ' End If End Sub
ソースコード一式のダウンロード
vbapi_getwindowlong.zip 1.11 KB (1,142 バイト)
このサンプルの動作環境について
このサンプルは 「Windows98」及び「Microsoft Visual Basic 5.0 Professional Edition」で確認しております。環境が異なる場合は正常に動作しない場合もございますのでご了承下さい。
スポンサーリンク
関連記事
前の記事: | ウインドウアイテムの情報を取得する |
次の記事: | ウインドウの外側のサイズを取得する |
公開日:2015年03月06日
記事NO:00420