首页 文章

如何使用UFT单击'SwfObject'?

提问于
浏览
-1

enter image description here

我想点击链接 [Link name is 'Settlement'] ,该页面上有许多链接 .

注意:对象 Spy 不会将“结算”标识为链接,而是将其视为资源管理器栏 . 当我在“结算”文本中采用对象 Spy 时,它会突出显示整个资源管理器栏,因此我无法获得“结算”特定属性 . [参考随附的屏幕截图 . 由于安全原因,我无法上传真实的屏幕截图] .

通过录音,我可以点击“结算”链接

SwfWindow("Platform Integration Exchange").SwfObject("mainExplorerBar").Click 133,598

目前,133和598是“结算”的硬编码值,但未来“结算”的位置可能会发生变化 .

所以我想知道,如何使用X&Y坐标点击“结算”链接,而对象 Spy 无法单独识别“结算”链接?

或者有没有其他方法来点击这些类型的对象?

谢谢Onkar

3 回答

  • 1

    在这种情况下,我建议使用 virtual button 对象 .

    在您的UFT中,请访问:

    工具>虚拟对象>新虚拟对象

    选择 "Button" 并单击 "Mark Object" 按钮 . 将出现一个十字线光标并标记您要映射的对象 . 选择要单击的coorrdinates中的区域 .

    完成后,单击 "Next" .

    选择Virtual对象的父对象,然后单击 "Next" .

    将按钮命名为“myButton”,并命名要存储虚拟对象的集合,然后单击 "Finish" .

    您现在可以在脚本中使用“myButton”按钮:

    SwfWindow("Platform Integration Exchange").VirtualButton("myButton").Click
    
  • 1

    使用Insight Objects . 在我的项目中我们正在使用swf应用程序 . 对于应用程序中的一部分,虽然它是Application的主要部分之一,但它没有被识别出来 . 所以我们使用Insight Object . 它工作得很好 .

    其他

    如果单独标识为Swf对象,则只能使用Click方法

    语法是:object.Click [X],[Y],[BUTTON]

    X,Y,BUTTON是可选的 . 默认情况下,它会左键单击 .

    X,Y是坐标 .

    如果您想要点击不同的按钮,请使用以下内容 .

    0=micLeftBtn
    1=micRightBtn
    2=micMiddleBtn
    

    对于LeftClick: SwfWindow("Form1").SwfObject("Object1").Click
    右键单击: SwfWindow("Form1").SwfObject("Object1").Click 1,1,1
    对于中间点击: SwfWindow("Form1").SwfObject("Object1").Click 1,1,2

  • 1

    我对powerbuilder应用程序有同样的问题,我使用下面的功能 . 我已根据您的要求对其进行了修改

    公共功能CLICKTEXTINSIDEOBJECT

    Dim OperatedObject
    Dim X1, X2, Y1, Y2
    
    X1=0
    X2=0
    Y1=0
    Y2=0
    
    'get the object
    Set OperatedObject = SwfWindow("Platform Integration Exchange").SwfObject("mainExplorerBar")
    
    'get the co-ordinates of the text to be clicked
    OperatedObject.GetTextLocation "Settlement",X1,Y1,X2,Y2
    
    ''Check if the Co-ordinates are assigned
    if ((X1 > 0) or (Y1 > 0)) then
        OperatedObject.Click (X1 + X2)/2, (Y1+Y2)/2
        CLICKTEXTINSIDEOBJECT = true
    Else
        CLICKTEXTINSIDEOBJECT = false
    End If
    

    结束功能

    以下是有关GetTextLocation对象的说明

    http://uft-help.saas.hpe.com/en/14.00/UFT_Help/Subsystems/FunctionReference/Subsystems/OMRHelp/Content/WindowsForms/SWFPACKAGELib~SwfObject.html#GetTextLocation

相关问题