xsw123 发表于 2008-12-26 08:12:28

谁能提供一个列示当前打开的所有窗口名的代码?

谁能提供一个列示当前打开的所有窗口名的代码?

liongodmien 发表于 2008-12-26 11:36:31


Opt('WinSearchChildren', 1)
Opt('WinTitleMatchMode', 2)
Dim $a
$l = WinList()
For $i = 1 To $l
        $a &= '窗口名称:'&$l[$i]&'        窗口句柄:'&$l[$i]& @CRLF
Next
MsgBox(0,'',$a)

大绯狼 发表于 2008-12-26 20:49:48

狮子兄的代码会显示所有的程序 包括隐藏的
可以参考下帮助里的WINLIST 只显示可见窗口的名字
$var = WinList()

For $i = 1 to $var
; 仅显示带标题的可见窗口
If $var[$i] <> "" AND IsVisible($var[$i]) Then
    MsgBox(0, "详情", "标题=" & $var[$i] & @LF & "句柄=" & $var[$i])
EndIf
Next

Func IsVisible($handle)
If BitAnd( WinGetState($handle), 2 ) Then
    Return 1
Else
    Return 0
EndIf

EndFunc
页: [1]
查看完整版本: 谁能提供一个列示当前打开的所有窗口名的代码?