ホーム > カテゴリ > Visual Basic >

ウインドウを列挙する

ウインドウを列挙するサンプルです。

サンプルの実行画面

APIの宣言

[EnumWindow.bas]


'EnumWindows=>すべてのウインドウを列挙する

'<引数>
'lpEnumFunc:   コールバックプロシージャ
'lPalam:       常に0

'@戻り値@
'  正常終了 -1

Public Declare Function EnumWindows Lib "USER32" (ByVal lpEnumFunc As Long, lPalam As Long) As Long


'GetWindowText=>ウインドウのタイトルバーの文字列を取得する

'<引数>
'hWnd:        ウインドウのハンドル
'lpString:    文字列が格納される変数
'cch:         文字列の文字数

'@戻り値@
' 文字列のバイト数

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

'IsWindowVisible=>ウインドウが表示されているか判別する

'<引数>
'hWnd:   ウインドウのハンドル

'<戻り値>
' 表示されている場合 1

Public Declare Function IsWindowVisible Lib "USER32" (ByVal hWnd As Long) As Long

'---------------------------------------
'■関数名  Rekkyo
'■用途   ウインドウを列挙する
'■引数   Hnadle:ウインドウのハンドル
'---------------------------------------


Public Function Rekkyo(ByVal Handle As Long) As Boolean

Dim Ret1 As Long
Dim Leng As Long
Dim Name As String
'Dim Ret2 as long
    

    'バッファ確保
      Name = String(255, Chr(0))
      Leng = Len(Name)
   
    '名前を取得する
      Ret1 = GetWindowText(Handle, Name, Leng)


'表示されているか判別
'Ret2 = IsWindowVisible(Handle)

  
'If Ret2 = 1 Then
 
  
  If Ret1 <> 0 Then
     Form1.List1.AddItem Name
  End If
  

'End If

Rekkyo = True

End Function

APIの呼び出し

[EnumWindow.frm]

Private Sub Command1_Click()

Dim Ret As Long
Ret = EnumWindows(AddressOf Rekkyo, 0)

End Sub

ソースコード一式のダウンロード

vbapi_enumwindow.zip 1.93 KB (1,982 バイト)

このサンプルの動作環境について

このサンプルは 「Windows98」及び「Microsoft Visual Basic 5.0 Professional Edition」で確認しております。環境が異なる場合は正常に動作しない場合もございますのでご了承下さい。





関連記事



公開日:2015年03月06日
記事NO:00417


この記事を書いた人

💻 ITスキル・経験
サーバー構築からWebアプリケーション開発。IoTをはじめとする電子工作、ロボット、人工知能やスマホ/OSアプリまで分野問わず経験。

画像処理/音声処理/アニメーション、3Dゲーム、会計ソフト、PDF作成/編集、逆アセンブラ、EXE/DLLファイルの書き換えなどのアプリを公開。詳しくは自己紹介へ
プチモンテ代表、アーティスト名:プチモンテ
🎵 音楽制作
BGMは楽器(音源)さえあれば、何でも制作可能。歌モノは主にロック、バラード、ポップスを制作。歌詞は叙情詩、叙情的な楽曲が多い。楽曲制作は2023年12月中旬 ~

オリジナル曲を始めました✨

YouTubeで各楽曲を公開しています🌈
https://www.youtube.com/@petitmonte

【男性ボーカル】DA・KA・RA | 新たな明日が風と共に訪れる

【男性、女性ボーカル】時空を超越する先に | 時空と風の交響曲

【女性、男性ボーカル】絆 | 穏やかな心に奏でる旋律