0

假设我有下表:

|A|B|C|
|1|2|3|
|4|5|6|

要从(第 1 行,第 2 列)修改值(从 2 到 7),我使用了以下行:

mouseClick(waitForObjectItem(":Dummy_JTable", "0/1"))
type(waitForObject(":Dummy_JTable"), "7")

...但是如果将在 SW 中引入一个新功能,比如说AB之间的D列,那么上面提到的代码会将7放在新的D列中。

有没有办法键入与列名/文本(表头)相关的值?

更新:我将 Squish 5.1.3 与 Python 一起使用。

4

1 回答 1

2

从你所说的,我不相信有。您可以做的是编写一个函数,该函数读取所有表项,并返回您要查找的项。例如:

children = object.children(":Dummy_JTable")
for counter in range(len(children)):
    cell_value = children[counter].text
    if cell_value == "searched cell value":
        mouseClick(waitForObjectItem(":Dummy_JTable", children[counter]))
        type(waitForObject(":Dummy_JTable"), "7")

“搜索的单元格值”=您希望在单元格中的值。

我测试的软件也有这个问题,而且因为我经常遇到GUI变化,我真的必须使用这种功能,即使使用cell/row也容易得多。

于 2015-07-08T05:16:47.273 回答