海林 发表于 2006-11-10 16:32:49

GetCellData取不到值啊?

zjf=Window("预算通 (石油钻井)").Window("四川.SYT").WinTable("TDrawGrid_2").GetCellData( 1,4)
msgboxzjf
结果显示zjf为空,请问GetCellData怎么取不到值啊?单元格中是有值的。sdlkfj9

denisye 发表于 2006-11-10 17:13:11

有时候你页面上看的1,4并不是程序里面真正的行列号

For i=1 to Browser("Data Dictionary List").Page("Data Dictionary List_2").WebTable("POMList").RowCount
For j=1 to Browser("Data Dictionary List").Page("Data Dictionary List_2").WebTable("POMList").ColumnCount(i)
data=Browser("Data Dictionary List").Page("Data Dictionary List_2").WebTable("POMList").GetCellData (i,j)
      data=i & j & ":" & data
         msgbox data
Next
Next

改一下上面的例子,应该就能让你找到你需要的值吧

walker1020 发表于 2006-11-11 20:59:38

把你的代码改为下面的代码再试试看:

zjf=Window("预算通 (石油钻井)").Window("四川.SYT").WinTable("TDrawGrid_2").GetCellData( 1,4)
Typename(zjf)
msgbox(Typename(zjf))

提示:Typename(zjf) 是得到 zjf 变量的类型。

另外,GetCellData(M,N) 函数中的M和N可能并不是你在页面上的表格里看到的行号和列号。例如,有可能 M=2,N=5 才是你需要的。WinTable("TDrawGrid_2")这个表格的第一 行可能是标题,第一栏 可能是隐含的。 你可以通过反复调试来确定合适的M和N的值,这样才能通过GetCellData(M,N) 得到需要的数据。

[ 本帖最后由 walker1020 于 2006-11-11 21:02 编辑 ]

海林 发表于 2006-11-12 11:09:56

还是不行啊是不是qtp对delphi支持不好啊,脚本如下:
Window("每日提示").WinButton("关闭").Click
Window("预算通 (石油钻井)").WinMenu("Menu").Select "文件;打开项目"
Dialog("打开").WinListView("SysListView32").Activate "sys"
Dialog("打开").WinListView("SysListView32").Activate "四川.SYT"
wait(2)
For i=1 to Window("预算通 (石油钻井)").Window("四川.SYT").WinTable("TDrawGrid").RowCount
For j=1 to Window("预算通 (石油钻井)").Window("四川.SYT").WinTable("TDrawGrid").ColumnCount
data=Window("预算通 (石油钻井)").Window("四川.SYT").WinTable("TDrawGrid").GetCellData (i,j)
msgbox data
Next
Next
显示结果为空,有几列上有数据的,如果加上data=i & j & ":" & data
语句话显示结果也不对啊?

walker1020 发表于 2006-11-12 20:02:56

先用 Typename 函数 得到数据的类型再说。

海林 发表于 2006-11-13 08:51:32

也用了Typename(zjf)
msgbox(Typename(zjf))
语句,显示的是string啊?

walker1020 发表于 2006-11-13 10:36:32

那就在 msgbox data 这行代码前面 增加 下面的一行代码后 再试试看看:
   data = CStr(data)

说明: 使用 CStr 函数进行强制类型转换。

海林 发表于 2007-1-16 14:26:38

谢谢

at.1978 发表于 2007-3-9 17:00:24

问个简单的问题,在我的help里怎么找不到WinTable这个类呢?另外在qtp的object identification里也找不到啊,为什么呢?
我的qtp是试用版的有关系吗?

xiaona580527 发表于 2010-6-8 16:30:34

原帖由 at.1978 于 2007-3-9 17:00 发表 http://bbs.51testing.com/images/common/back.gif
问个简单的问题,在我的help里怎么找不到WinTable这个类呢?另外在qtp的object identification里也找不到啊,为什么呢?
我的qtp是试用版的有关系吗?

我现在也碰到这个问题~~
QTP10.0 Help仍然没有WinTable对象,但程序有WinTable对象,可是无法使用,要么提示“参数不对”,要么提示“调用Sub过程不能使用括号”等等奇怪的内容
页: [1]
查看完整版本: GetCellData取不到值啊?