Au3获取桌面图标名称与坐标
#include <GuiListView.au3>
Global $hWndManager = WinGetHandle("Program Manager") ;获取桌面句柄
Global $hWndDesktop = ControlGetHandle("Program Manager", "", 1) ;获取桌面列表控件句柄
$iCount = ControlListView($hWndManager, "", $hWndDesktop, "GetItemCount") ;获取桌面列表中的数量(也就是图标的数量)
;测试输出
ConsoleWrite("序号 = " & "图标名称|X坐标|y坐标" & @CRLF)
For $iIndex = 0 To $iCount - 1
$sName = ControlListView($hWndManager, "", $hWndDesktop, "GetText", $iIndex) ;根据图标排列的ID获取图标的名称
$xy = _GUICtrlListView_GetItemPosition($hWndDesktop, $iIndex) ;根据图标排列的ID,获取图标在控件中的座标 返回数组 [0]=x座标 [1]=y座标
;以下的 $sName $xy[0] $xy[1] 三个值就是你要的
ConsoleWrite($iIndex & " = " & $sName & "|" & $xy[0] & "|" & $xy[1] & @CRLF)
Next
ConsoleWrite("---------------结束---------------------" & @CRLF)
上述程序语句中: $sName = ControlListView($hWndManager, "", $hWndDesktop, "GetText", $iIndex) ;根据图标排列的ID获取图标的名称; 这一句程序报错
不知何故?其他均正常。求大师指点。 |