TestResults.io
  • What is TestResults.io
  • System Architecture
  • Regulated Markets
    • Health Care Industry
    • Financial Services Industry
  • What's new?
    • Update Instruction
      • Update of the Designer extension in Visual Studio
      • Update the Execution Engine
      • Update the Base- and Environment Models
    • Migration to new project file
  • Designer
    • Overview
    • First Steps
    • Installation
    • TestResults.io solution
    • The development environment
      • Tool Window Overview
        • Test Environments
          • Steps to configure a SUT VM
          • How to access files on the system under test
        • Remote Viewer
          • Control Mode
          • Capture Mode
          • Screen Editor
          • Capture Single Image
        • Screen Explorer
        • Test Case Designer
        • Image Explorer
        • API Testing
        • TestResults.io options
          • Engines
          • Servers
    • Test Cases
      • Adding Test Cases
      • Test Case structure
      • Simple Test Case (Example)
      • Executing your Test Case
      • Generating Test Containers
      • Publishing Test Cases
      • Execution Variables
    • Software Models
      • Adding SW Models
      • Referencing the Model in the Test Case
      • Generating Test Containers
      • Publishing SW Models
      • Screens and Screen Elements
        • Tables
        • Visual Sense
        • Custom Screen Elements
    • Installers
      • Adding Installers
      • Generating Test Containers
      • Publishing Installers
    • Automation Framework Reference
      • Attributes
      • Enumerations
      • Filters
        • IImageFilter Interface
        • Select
        • Resize
      • GlobalEngineParameters
      • ImageDetectionParameters
      • ImageReference
      • Interfaces
        • ITester Interface
          • ITester Methods
          • ITester Properties
        • ITestee Interface
          • ITestee Methods
        • IConnections Interface
          • IConnections Methods
          • IConnections Properties
        • IDebug Interface
        • IEngineResult
        • IHelpers Interface
        • IImageHelper Interface
          • IImageHelper Methods
        • IKeyboard Interface
          • IKeyboard Methods
        • IMouse Interface
          • IMouse Methods
          • IMouse Properties
        • IReport Interface
          • IReport Methods
        • ISUTConnection Interface
      • OcrEngineParameters
        • Best practise
        • IronOcrEngineParameters
        • LEADOcrEngineParameters
        • OcrEngineRelatedCharacters
        • OcrPreprocessingParameters
      • ResultRectangle
      • SutNotReadyException
      • TestStepAbortedException
    • FAQ
      • Two-factor authentication (2FA) and One Time Passwords (OTP)
      • Receive and verify Emails
      • Using Excel as test data source
      • Verify PDF Content
  • Portal
    • Overview
    • First Steps
    • User's Guide
      • Login
      • Projects
      • Dashboard
      • Test Cases
      • Software & Environments
      • Test Sets
      • Job Queue
      • Management
      • Notifications Summary
    • Automation Engineer's Guide
      • Test Automation Workflow
      • Automating a test case
      • Enabling Software & Environments
    • REST API Reference
      • Authentication
      • Projects
      • Test Sets
      • Test Cases
      • Test Plans
      • Test Reports
      • Files
      • Software
      • Environments
      • Untitled
      • Executions
      • Favorites
      • Statistics
      • User Management
      • Customer Management
      • Notifications
      • Configurations
      • Invoicing
  • Models
    • Overview
    • Base Model
      • BaseScreen
        • BaseScreen Properties
        • BaseScreen Methods
      • OnScreenElement
        • OnScreenElement Methods
        • OnScreenElement Properties
      • Primitives
        • Button
          • Button Methods
          • Button Properties
        • Checkbox
          • Checkbox Methods
        • ContextMenu
          • ContextMenu Methods
          • ContextMenu Properties
        • Dropdown
          • Dropdown Methods
          • Dropdown Properties
        • DropdownMenu
          • DropdownMenu Methods
          • DropdownMenu Properties
        • GenericScroller
          • GenericScroller Methods
          • GenericScroller Properties
        • HorizontalScroller
        • IconButton
          • IconButton Properties
        • Label
        • LabelWithButton
          • LabelWithButton Properties
        • LabelWithCheckbox
          • LabelWithCheckbox Properties
        • LabelWithValue
          • LabelWithValue Methods
          • LabelWithValue Properties
        • PwTextBox
          • PwTextBox Methods
        • TextBox
          • TextBox Methods
          • TextBox Properties
        • Tables and lists
          • Column
            • Column Methods
            • Column Properties
          • ItemList
            • ItemList Methods
            • ItemList Properties
          • Row
            • Row Methods
            • Row Properties
          • TableBase
            • TableBase Methods
            • TableBase Properties
        • LabelWithElementBase
          • LabelWithElementBase Properties
      • Enumerations
      • Extensions
        • EngineResultExtensions Methods
        • EnumExtensions Methods
        • ReportExtensions Methods
        • StringExtensions Methods
        • TesterConnectionExtensions Methods
        • TesterDebugExtensions Methods
        • TesterHelperExtensions Methods
        • TesterMouseExtensions Methods
        • TesterOnScreenElementExtensions
        • TesterSelectExtensions Methods
      • Helper Classes
        • BaseModelHelpers
          • BaseModelHelpers Methods
          • BaseModelHelpers Properties
        • Attributes for Designer
        • ListHelpers
      • Exceptions
        • ElementNotFoundException
        • InteractionFailedException
        • ScreenNotFoundException
      • Interfaces
        • IAppBasics Interface
          • IAppBasics Methods
          • IAppBasics Properties
        • IBrowser
        • ICommandLineWindow
        • IScroller Interface
          • IScroller Methods
          • IScroller Properties
        • ISutLocale Interface
          • ISutLocale Methods
          • ISutLocale Properties
        • ISystemHelpers
        • ISystemInteractions
        • IWindow
    • Environment Model
      • Windows
        • Screens
          • CmdWindow
            • CmdWindow Methods
            • CmdWindow Properties
          • FileDialog
            • FileDialog Methods
            • FileDialog Properties
          • FileExplorer
            • FileExplorer Properties
          • RunWindow
            • RunWindow Methods
            • RunWindow Properties
          • Window
            • Window Methods
            • Window Properties
        • SutLocale
          • SutLocale Methods
          • SutLocale Properties
        • SystemHelpers
          • SystemHelpers Methods
          • SystemHelpers Properties
        • SystemInteractions
        • WebBrowser
          • Browser
            • Browser Methods
            • Browser Properties
          • BrowserScroller
            • BrowserScroller Methods
            • BrowserScroller Properties
          • AuthenticationDialog
            • AuthenticationDialog Methods
            • AuthenticationDialog Properties
          • DownloadDialog
            • DownloadDialog Methods
            • DownloadDialog Properties
        • EnvironmentModel Enumerations
        • Interfaces
          • IWebAppBasics
            • IWebAppBasics Property
Powered by GitBook
On this page
  • Description
  • HorizontalScroller Class
  • Constructors
  • Methods
  • Properties

Was this helpful?

  1. Models
  2. Base Model
  3. Primitives

HorizontalScroller

PreviousGenericScroller PropertiesNextIconButton

Last updated 4 years ago

Was this helpful?

Description

Generic implementation for a horizontal scroller, analogous to the . This generic implementation is based on a scroller with left- and right arrows that are not hidden automatically and a thumb that moves when scrolling as it is typically found in many Windows applications. It will not work for a macOS scroller which does not feature the arrow buttons.

The scroller requires the user to provide images for the specific scroller of the target application. When taking the images the following points not to be observed to allow the implementation to work correctly:

Left- and RightArrow images: The image needs to be taken or cropped so that the right (for LeftArrow) or right (for LeftArrow) is exactly at the border between the button and the scrollbar area. This is important as for scrolling a page left or right, the implementation clicks just slightly to the right or left of the button. A simple way to capture these images is by hovering over the button, so the borders of the button are clearly visible then switching to capture mode and crop the image selection to now visible borders. For some scrollers there are active and inactive button representations to indicate if the scroller is active. This representations need to be both captured and named (or placed in folders named) active and inactive, similar to how it is done for . Make sure the engine can distinguish the representations by setting the precision and/or engine in the image explorer.

AtLeftEnd and AtRightEnd images: These images should show the thumb at the very left end and very right end of the scrollbar, ideally the images also include the Left- and RightArrows. Make sure these images are less high than the images of the Left- and RightArrows as the height of the to search for AtLeftEnd and AtRightEnd is determined by the Left- and RightArrow images. If the thumb has a hover effect, you might need to provide two representations of AtLeftEnd and AtRightEnd images or make sure that the image can be found with or without hover effect.

HorizontalScroller Class

Namespace: Progile.TRIO.BaseModel Assembly: Progile.TRIO.BaseModel (in Progile.TRIO.BaseModel.dll)

Inheritance Hierarchy:

Constructors

Creates a new instance of the HorizontalScroller, based on the provided images. See above for details about the different images.

Syntax:

public HorizontalScroller(
	ITester tester,
	Select searchRectangle,
	ImageReference leftArrowButtonImages,
	ImageReference rightArrowButtonImages,
	ImageReference atLeftEndImage,
	ImageReference atRightEndImage,
	ImageReference inactiveLeftArrowButtonImage = null,
	ImageReference inactiveRightArrowButtonImage = null
)

Parameter

Description

tester

The tester interface.

searchRectangle

leftArrowButtonImage

rightArrowButtonImage

atLeftEndImage

atRightEndImage

[inactiveLeftArrowButtonImage]

[inactiveRightArrowButtonImage]

Methods

Name

Description

​ResetState​

​ScrollLineRight

Scrolls right by the smallest increment, to show the next line of the scrollable content by clicking on the scroll right button.

​ScrollLineLeft

Scrolls left by the smallest increment, to show the previous line of the scrollable content by clicking on the scroll left button.

​ScrollPageRight​

Scrolls right by a larger amount, to show the next page of the scrollable content by clicking just to the left of the scroll right button.

​ScrollPageLeft​

Scrolls left by a larger amount, to show the previous page of the scrollable content by clicking just to the right of the scroll left button.

​ScrollToRightEnd​

Scrolls all the way to the right end of the scrollable content. IsAtRightEnd should be true after this.

​ScrollToLeftEnd​

Scrolls all the way to the Left end of the scrollable content. IsAtLeftEnd should be true after this.

​ScrollWheelRight

​ScrollWheelLeft​

Properties

Name

Description

RightArrow​

The button to scroll right.

​IsActive​

Determines whether the scroller is active, meaning that the content can be scrolled.

​IsAtRightEnd

Determines whether the scrollbar is at the right end, meaning the content is scrolled to the end.

​IsAtLeftEnd​

Determines whether the scrollbar is at the left end, meaning the content is scrolled to the beginning.

MaxScrollTime

The maximum time the scroller is allowed to try to scroll to the left end or right end before throwing an exception. Default = 60 seconds.

MoveApproachOffset

The offset that is used when moving to the positions on the scrollbar. By default set to (0, -10) to avoid hovering effects on the button or thumb when moving to position just below or above those elements.

RequiredStableTime

The time for how long the scrollable area must be stable during the stable check after each scrolling action. Default = 2 seconds.

​SearchSelect​

Gets or sets the search select filter with which the scroller elements can be found but should also contain the scrollable area. This area will be checked for stable screen after scrolling to ensure the scrolling animation is finished.

​LeftArrow​

The button to scroll left.

UpdateTolerance

The tolerance for the stable check after each scrolling action. Might need to be adjusted if there are continuous animations in the scrollable area. Default = ImgDiffTolerance.Medium.

Type:

Type: The search select filter with which the scroller elements can be found but should also contain the scrollable area. This area will be checked for stable screen after scrolling to ensure the scrolling animation is finished.

Type: The (active) image of the left arrow button.

Type: The (active) image of the right arrow button.

Type: The image of the thumb at the left end of the scrollbar.

Type: The image of the thumb at the right end of the scrollbar.

Type: The inactive image of the left arrow button.

Type: The inactive image of the right arrow button.

Resets the of the scroller to Unknown. Should be called when the content is scrolled without interacting with the IScroller (e.g. adding new items to a list). Ensures on next interaction the scroller checks the state.

Scrolls right using the which typically moves the scrollable content by three lines.

Scrolls left using the which typically moves the scrollable content by three lines.

GenericScroller
Button
Select
Object
Progile.TRIO.BaseModel.OnScreenElement
ITester
Select
ImageReference
ImageReference
ImageReference
ImageReference
ImageReference
ImageReference
state
Mouse.ScrollWheel
Mouse.ScrollWheel