如果我们想检查一个菜单项的属性,可以使用Squish IDE插入验证点,或者手写代码。这里我们介绍如何写代码。
QMenus(QWidgets 也是如此)有一份QAction 对象列表。我们可以获取这个列表,使用QList API 遍历它的actions,对于每个action我们可以查询或者设置它的属性。首先我们看一个访问一个action的属性的例子,然后看一下该例依赖的自定义函数 getAction 的实现。
editMenu = waitForObject(":CSV Table - Unnamed.Edit_QMenu")
removeAction = getAction(editMenu, "&Remove Row")
test.verify(not removeAction.enabled)
test.verify(not removeAction.checked)
insertRowAction = getAction(editMenu, "&Insert Row")
test.verify(insertRowAction.enabled)
test.verify(not insertRowAction.checked)
这里我们获取一个应用程序的Edit 菜单的应用,检查remove row action是否可用以及是否可选,然后insert row action是否可用以及是否可选。(通常情况下是这样的,当使用 Tcl 时,我们选择使用test.compare 函数而不使用test.verify函数)。
def