zoukankan      html  css  js  c++  java
  • 《SeleniumBasic 3.141.0.0

    SeleniumBasic中的Actions类可以实现鼠标和键盘操作。方法列表如下

    其中标记为橙色的是键盘方面的操作。标记绿色的Create方法是创建行为时必须要运行的。

    • Function Click([onElement As IWebElement]) As Actions
    • Function ClickAndHold([onElement As IWebElement]) As Actions
    • Function ContextClick([onElement As IWebElement]) As Actions
    • Sub Create(driver As IWebDriver)
    • Function DoubleClick([onElement As IWebElement]) As Actions
    • Function DragAndDrop(source As IWebElement, target As IWebElement) As Actions
    • Function DragAndDropToOffset(source As IWebElement, offsetX As Long, offsety As Long) As Actions
    • Function KeyDown(theKey As String, [onElement As IWebElement]) As Actions
    • Function KeyUp(theKey As String, [onElement As IWebElement]) As Actions
    • Function MoveByOffset(offsetX As Long, offsety As Long) As Actions
    • Function MoveToElement(toElement As IWebElement, [offsetX As Long], [offsety As Long]) As Actions
    • Sub Perform()
    • Function Release_([onElement As IWebElement]) As Actions
    • Function Sendkeys(keysToSend As String, [element As IWebElement]) As Actions

    执行行为链时必须运行Perform方法,否则没有效果。

    可以看到均有一个element可选参数,这个可以提供,也可以不写。

    下面的程序,演示了在搜索中按下右键,弹出快捷菜单。

        Dim Action As SeleniumBasic.Actions
        Set Action = New SeleniumBasic.Actions
        Action.Create driver:=WD
        Action.ContextClick(onElement:=keyword).Perform

    WD是浏览器对象,通过Action.Create方法与之关联。运行ContextClick方法,会在元素上按下右键。对于单击、双击都是相同的用法,不需举例。

    按键方面,可以使用KeyDown按下Control、Shift或功能键,也可以使用KeyUp弹起。

    还可以使用SendKeys发送字符串。下面程序演示了创建行为链,向百度搜索框中发送Control+A全选,然后发送Control+X剪切。这样就把文本框的内容剪切到剪贴板上了。

        Dim Key As SeleniumBasic.Keys
        Dim Action As SeleniumBasic.Actions
        Set Key = New SeleniumBasic.Keys
        Set Action = New SeleniumBasic.Actions
        Action.Create driver:=WD
        Call Action.KeyDown(Key.Control, keyword).SendKeys("a", keyword).KeyUp(Key.Control, keyword).KeyDown(Key.Control, keyword).SendKeys("x", keyword).KeyUp(Key.Control, keyword).Perform

     注意,KeyDown和KeyUp后面跟的参数,需要从Keys类中得到。支持的按键有

    Property Add As String
    Property Alt As String
    Property ArrowDown As String
    Property ArrowLeft As String
    Property ArrowRight As String
    Property ArrowUp As String
    Property Backspace As String
    Property Cancel As String
    Property Clear As String
    Property Command As String
    Property Control As String
    Property Decimal As String
    Property Delete As String
    Property Divide As String
    Property Down As String
    Property End As String
    Property Enter As String
    Property Equal As String
    Property Escape As String
    Property F1 As String
    Property F10 As String
    Property F11 As String
    Property F12 As String
    Property F2 As String
    Property F3 As String
    Property F4 As String
    Property F5 As String
    Property F6 As String
    Property F7 As String
    Property F8 As String
    Property F9 As String
    Property Help As String
    Property Home As String
    Property Insert As String
    Property Left As String
    Property LeftAlt As String
    Property LeftControl As String
    Property LeftShift As String
    Property Meta As String
    Property Multiply As String
    Property Null As String
    Property numberpad0 As String
    Property numberpad1 As String
    Property numberpad2 As String
    Property numberpad3 As String
    Property numberpad4 As String
    Property numberpad5 As String
    Property numberpad6 As String
    Property numberpad7 As String
    Property numberpad8 As String
    Property numberpad9 As String
    Property PageDown As String
    Property PageUp As String
    Property Pause As String
    Property Return As String
    Property Right As String
    Property Semicolon As String
    Property Separator As String
    Property Shift As String
    Property Space As String
    Property Subtract As String
    Property Tab As String
    Property Up As String

  • 相关阅读:
    ECNU-2574 Principles of Compiler
    C++调用C#生成的DLL文件的各种问题
    EOJ-1708//POJ3334
    Linux---弹球游戏
    dotfiles管理
    js基础的知识整理
    关于css的一些知识点整理
    HTML5 aria- and role
    JS获取非行间样式
    Javascript中的数组去重-indexof方法
  • 原文地址:https://www.cnblogs.com/ryueifu-VBA/p/13695430.html
Copyright © 2011-2022 走看看