Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


10117 / 76734 ←次へ | 前へ→

【72169】Re:開いていいるWindowの名前(caption)の取得
回答  ちび坊主  - 12/6/13(水) 12:32 -

引用なし
パスワード
       EnumChildWindowsとか、FindWindowsEXで再帰かけるとか。

Private Declare Function GetWindowText Lib "user32" _
    Alias "GetWindowTextA" _
    (ByVal hwnd As Long, ByVal lpString As String, _
    ByVal nMaxCount As Long) As Long
Private Declare Function GetClassName Lib "user32" _
    Alias "GetClassNameA" _
    (ByVal hwnd As Long, ByVal lpClassName As String, _
    ByVal nMaxCount As Long) As Long
Private Declare Function FindWindowEx Lib "user32" _
    Alias "FindWindowExA" _
    (ByVal hwndParent As Long, ByVal hwndChildAfter As Long, _
    ByVal lpszClass As String, ByVal lpszWindow As String) As Long
Private Declare Function IsWindowVisible Lib "user32" _
    (ByVal hwnd As Long) As Long

Private Sub GetChilds(ByVal hwndParent As Long, _
       Optional r As Long, Optional ByVal c As Long = 1)

  Dim h As Long
  Dim sClass As String
  Dim sText As String
  Do
    h = FindWindowEx(hwndParent, h, vbNullString, vbNullString)
    If h = 0 Then Exit Do
    If IsWindowVisible(h) Then
     r = r + 1
 
     sClass = String$(80, 0)
     sText = String$(80, 0)
     GetClassName h, sClass, Len(sClass)
     GetWindowText h, sText, Len(sText) - 1
     sClass = Left$(sClass, InStr(sClass, vbNullChar) - 1)
     sText = Left$(sText, InStr(sText, vbNullChar) - 1)
 
     With ActiveSheet.Cells(r, c)
       .Value = Right$(String$(7, "0") & Hex$(h), 8) & _
             ", " & sClass & ", " & sText
     End With
     sClass = vbNullString: sText = vbNullString
 
     GetChilds h, r, c + 1
    End If
  Loop
End Sub

Sub Test()
  ActiveSheet.Cells.Clear
  GetChilds FindWindowEx(0, 0, "FNWND380", "Main_Window")
End Sub

3 hits

【72142】開いていいるWindowの名前(caption)の取得 亜矢 12/6/7(木) 21:16 質問
【72144】Re:開いていいるWindowの名前(caption)の... UO3 12/6/7(木) 21:55 発言
【72146】Re:開いていいるWindowの名前(caption)の... 亜矢 12/6/8(金) 6:48 お礼
【72168】Re:開いていいるWindowの名前(caption)の... 亜矢 12/6/13(水) 10:40 質問
【72169】Re:開いていいるWindowの名前(caption)の... ちび坊主 12/6/13(水) 12:32 回答
【72171】Re:開いていいるWindowの名前(caption)の... 亜矢 12/6/13(水) 13:48 お礼
【72170】Re:開いていいるWindowの名前(caption)の... UO3 12/6/13(水) 12:59 発言
【72172】Re:開いていいるWindowの名前(caption)の... 亜矢 12/6/13(水) 13:59 お礼

10117 / 76734 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free