123.子ウインドウを列挙する

< 使用用途 >
子ウインドウを列挙する

今回のサンプルソースをダウンロードする方は下記の「ダウンロード」を!
=> ダウンロード ・・・ 下記のソースト同じです。


 < 説明 >
API関数のEnumChildWindows使用します
EnumChildWindows =>子ウインドウを列挙
  <引数>
     hWndParent:親ウインドウのハンドル
     lpEnumFunc:コールバック関数へのポインタ
     lParam&:コールバック関数へ渡す32ビット値     
  @戻り値@
     正常終了0以外


< SAMPLE >

'標準モジュール
Public Declare Function EnumChildWindows Lib "USER32" (ByVal hWndParent As Long, ByVal lpEnumFunc As Long, ByVal lParam As Long) As Long

Public Declare Function GetWindowText Lib "USER32" Alias "GetWindowTextA" (ByVal hWnd As Long, ByVal lpString As String, ByVal cch As Long) As Long

Public Function EnumChildProc(ByVal hWnd As Long) As Long

 Dim Ret As Long
 Dim Leng As Long
 Dim Name As String

   'バッファ確保
   Name = String(255, Chr(0))
   Leng = Len(Name)

   '名前を取得する
   Ret = GetWindowText(hWnd, Name, Leng)

   If Ret <> 0 Then Form1.List1.AddItem Name

   EnumChildProc = 1

End Function

'ここからはフォームの処理です
Private Sub Command1_Click()
  Dim RetAs Long
  Ret = EnumChildWindows(hWnd, AddressOf EnumChildProc, 0)
End Sub





API 技術関連のページへ戻る

ホーム PV ランキング