如何点击 webtable 特定行

How to click on webtable specific row

我有这段代码可以点击第一行和第一列。

Set oExcptnDetail = Description.Create
oExcptnDetail("micclass").value = "WebElement"
oExcptnDetail("html tag").value = "TD"
Set chobj=Browser("").Page("").WebTable("Code").ChildObjects(oExcptnDetail)
chobj(0).Click 

如何使用上面的代码点击特定的行?

我使用了无效的子项目。

set objLink = Browser("bb").Page("bb").WebTable("Name_2").ChildItem(4, 1, "WebElement",0)

更新 1

我尝试了下面的代码。它没有点击第 3 行第 1 列。

Set desc = Description.Create
desc("html tag").value = "TR" 
Set rows = table.ChildObjects(desc)
desc("html tag").value = "TD"
Set cells = rows(3).ChildObjects(desc)
Set TableCell = cells(1)
Browser("").Page("").WebTable(TableCell).Click

UFT 的 ChildItem 函数 returns 元素 包含 在单元格中,这意味着它不会 return TD 细胞,只有它的后代。

为了获取单元格本身,您应该使用 WebTable.Cell,这是 UFT 中相对较新的功能,您可能没有。如果你不这样做,你应该能够像这样编写一个辅助函数(注意我写这个没有检查它,它可能需要额外的工作和错误处理):

Function TableCell(table, nRow, nCol)
    Set desc = Description.Create

    desc("html tag").value = "TR" ' Or "T[RH]" to capture TH too
    Set rows = table.ChildObjects(desc)

    desc("html tag").value = "TD"
    Set cells = rows(nRow).ChildObjects(desc)

    Set TableCell = cells(nCol)
End Function

那你可以用RegisterUserFunc来当WebTable.Cell用。

那么就可以这样使用了:

TableCell(Browser("").Page("").WebTable("Code"), 4, 1).Click

或者如果您使用 RegisterUserFunc 将其注册为 Cell:

Browser("").Page("").WebTable("Code").Cell(4, 1).Click