找回密码
 加入
搜索
查看: 1833|回复: 3

[AU3基础] WinList 返回全部窗口的标题如何放入组合列表框中(已解决)

[复制链接]
发表于 2012-6-24 21:49:43 | 显示全部楼层 |阅读模式
本帖最后由 zhwu530 于 2012-6-24 23:04 编辑

WinList 返回的是一个二维数组我不知道怎样将返回的全部窗口的标题放到组合列表框中。
#include <GuiComboBox.au3>
#include <GUIConstantsEx.au3>

Local $var = WinList()

$Form1_1 = GUICreate("aaaaa", 369, 120, 314, 207)
$Group1 = GUICtrlCreateGroup("", 8, 0, 353, 73)
$Label1 = GUICtrlCreateLabel("窗口:", 16, 20, 52, 17)
$Combo1 = GUICtrlCreateCombo("", 72, 16, 281, 25, 0x0003)

GUISetState(@SW_SHOW)
For $i = 1 To $var[0][0]
_GUICtrlComboBox_AddString($Combo1,$var[$i][0])
Next
#EndRegion ### END Koda GUI section ###

While 1
        $nMsg = GUIGetMsg()
        Switch $nMsg
                Case $GUI_EVENT_CLOSE
                        Exit

        EndSwitch
WEnd
 楼主| 发表于 2012-6-24 22:39:32 | 显示全部楼层
自己看帮助改了下可以实现了
$CreateName = "窗口获取"
$Form1_1 = GUICreate($CreateName, 369, 120, 314, 207)
$Group1 = GUICtrlCreateGroup("", 8, 0, 353, 73)
$Label1 = GUICtrlCreateLabel("窗口:", 16, 20, 52, 17)
$Combo1 = GUICtrlCreateCombo("", 72, 16, 281, 25, 0x0003)

GUISetState(@SW_SHOW)
Local $aList = WinList()
For $i = 1 To $aList[0][0]
        If $aList[$i][0] <> "" And _
                        $aList[$i][0] <> "Program Manager" And _
                        $aList[$i][0] <> $CreateName And _
                        BitAND(WinGetState($aList[$i][1]), 2) Then _
                        GUICtrlSetData($Combo1, $aList[$i][0])
Next

While 1
        $nMsg = GUIGetMsg()
        Switch $nMsg
                Case -3
                        Exit
        EndSwitch
WEnd
但发现窗口标题中带有   |   这个的就有问题了。大家打开论坛的网站 再运行上面的代码会发现什么? 求高手帮帮忙。。。
 楼主| 发表于 2012-6-24 23:03:19 | 显示全部楼层
继续帮助 原来是这样 。
Opt("GUIDataSeparatorChar", 0)
加上这个就好了。。
发表于 2013-1-16 23:49:28 | 显示全部楼层
是的。不错。。。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-9-29 13:32 , Processed in 0.081757 second(s), 21 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表