yufei8051 发表于 2013-1-16 10:50:37

请教:为什么这个SysListView32内容取不出来?

本帖最后由 yufei8051 于 2013-1-16 11:02 编辑

如下图所示,想用图中代码Local $yjyx = "预警 - (运行)"
Local $www=ControlListView($yjyx, "",1212,"GetItemCount");
Local $gpdm = StringLeft(ControlListView($yjyx, "",1212,"GetText",0),16);取得股票代码。-1是为了只取最新一条。
MsgBox(262208, $www,$gpdm) 获取 SysListView32 控件的内容,可是无论如何也取不,用下面的;#include <GuiListView.au3>
;$hWnd = ControlGetHandle($yjyx, "", 1212)
;MsgBox(4096,"ok",$hWnd & _GUICtrlListView_GetItemCount($hWnd))
也一样,只能取到图中那上莫名其妙的玩艺,用同样的代码可以很方便的把飞狐里同样的内容取出,是不是大智慧2的这个 SysListView32 有什么古怪?怎么才能取出里面的内容啊?

yufei8051 发表于 2013-1-16 10:58:23

这是取飞狐的数据,很正常:

yufei8051 发表于 2013-1-16 11:00:54

实在不明白,烦请高手指点,谢谢了先{:face (288):}

happytc 发表于 2013-1-16 11:14:58

回复 1# yufei8051

多半大智慧用的是虚拟Listview吧
你先谷歌一下虚拟Listview的情况

yufei8051 发表于 2013-1-16 12:00:39

回复yufei8051

多半大智慧用的是虚拟Listview吧
你先谷歌一下虚拟Listview的情况
happytc 发表于 2013-1-16 11:14 http://www.autoitx.com/images/common/back.gif

感谢回复,搜了半天,跟autoitx 有关的就是这个:http://www.autoitx.com/forum.php?mod=viewthread&tid=34578
可惜看不明白,能否请高手具体说下对这种控件用什么函数处理啊?

happytc 发表于 2013-1-16 12:41:18

回复 5# yufei8051

这种事,没有现成的所谓函数的,要花点精力才能做到的,不是随便就可以做到的,还得有这方面的基础。所以估计难有人直接免费花大精力帮你写代码了。要吗你自己研究自己做,要吗你你去脚本交易区花钱看看有没有人应召。

yufei8051 发表于 2013-1-16 21:39:28

回复yufei8051

这种事,没有现成的所谓函数的,要花点精力才能做到的,不是随便就可以做到的,还得有 ...
happytc 发表于 2013-1-16 12:41 http://www.autoitx.com/images/common/back.gif

感谢回复。
这个还真麻烦,还是没弄明白

wua0550 发表于 2013-1-23 01:43:08

本帖最后由 wua0550 于 2013-1-23 01:57 编辑

#Include <GuiListView.au3>
Local $yjyx = "预警 - (运行)"
$win=WinGetHandle($yjyx)
$hWnd=ControlGetHandle($win,"","")
$Hlishview=_GUICtrlListView_GetSelectedIndices($hWnd)
MsgBox(0,"这才是取选中项的文本内容",_GUICtrlListView_GetItemText($hWnd,$Hlishview))

yufei8051 发表于 2013-1-26 15:59:34


wua0550 发表于 2013-1-23 01:43 http://www.autoitx.com/images/common/back.gif
感谢回复!
我试了你的代码,好象还是不行啊,是我哪儿弄的不对吗?

wua0550 发表于 2013-1-28 15:33:18

回复 9# yufei8051
两个错误,第一 _GUICtrlListView_GetSelectedIndices
反回的是选中行的句柄~~你什么都没选,这不是主要的因为不选反回的是首行的句柄.

第二目测你的表的首列为图标~~没有文字内容当然只能取到空的了

用 _GUICtrlListView_GetItemTextArray全部取出来 自己看看要的是哪项#Include <GuiListView.au3>
#Include <array.au3>
Local $yjyx = "预警 - (运行)"


$win=WinGetHandle($yjyx)
$hWnd=ControlGetHandle($win,"","")
$Hlishview=_GUICtrlListView_GetSelectedIndices($hWnd)
$aItem = _GUICtrlListView_GetItemTextArray($hWnd, $Hlishview)

_ArrayDisplay($aItem )

yufei8051 发表于 2013-2-5 14:00:24

回复yufei8051
两个错误,第一 _GUICtrlListView_GetSelectedIndices
反回的是选中行的句柄~~你什么都没 ...
wua0550 发表于 2013-1-28 15:33 http://www.autoitx.com/images/common/back.gif

感谢你 回复!!!
这是我用上面代码测试结果,还是没有:


麻烦看看我是不是不搞错了?

jojomecool 发表于 2013-2-5 14:12:18

大家一起来学习

wua0550 发表于 2013-2-5 17:38:23

用工具看一下抓到的窗口句柄
和用代码取到的窗口句柄是不是相同
$win=WinGetHandle($yjyx)
页: [1]
查看完整版本: 请教:为什么这个SysListView32内容取不出来?