A light-weight and fast UI Automation Server component. Simple usage. Only Drag and Drop and Set Active property to True. It is ready. Supports custom component definition.
This is the documentation of the the settings of the TbsUIVCLServer component. We will then give some examples of custom component definitions. For more information about Microsoft UI Automation: UI Automation Overview
You can use Katalon Studio with WinAppDriver.
Delphi has two type visual control type:
Windows controls (TWinControl based like: TButton,TPanel...)
Native Delphi controls (TGraphicControl based like: TLabel,TSpeedButton...)
If you want to add your custom component to Besa UI Automation system. You must create a proxy class. If your class is TWinControl based your proxy class must be derivated from TbsWinControl else must be derivated from TbsControl.
This proxy class must be registered with AddVCLProviderClass method.
Sample code for TEdit control:
Sample code for TLabel control:
Besa UI Automation components support Grids. If you have a grid component (must be TWinControl based) you must create a proxy class from TbsTable class.
A table has Rows and Cells. And you must create proxy class for rows and cells. Proxy class required for rows and cells because UI Automation need bounds rectangle and set/get value for cells.
Your row class must be derivated from TbsTableRow and cell class derivated from TbsTableCell.
if your component based:
Delphi Class
UI Class
TCustomGrid
TbsUiCustomGrid
TStringGrid
TbsUiStringGrid
TDBGrid
TbsUiCustomDBGrid
else
TbsTable
Sample code for TStringGrid's base class TCustomGrid control: