Microsoft UI Automation
With the Microsoft UI Automation technology, the UI elements of
the PowerBuilder control can be accessible to the screen reader (such as
Windows Narrator), the accessibility tool (such as Accessibility
Insights, Inspect), and the automated testing tool (such as QTP) in
Windows 10 and Windows Server 2019.
The Microsoft UI Automation technology allows you not only to
access and test the PowerBuilder standard controls (see Table 1), but
also the PowerBuilder DataWindow controls (see Table 2 and 3).
Table 1: PowerBuilder
controls/objects supported by Microsoft
UI Automation
|
Animation CheckBox CommandButton DataWindow DatePicker DropDownListBox DropDownPictureListBox EditMask |
GroupBox HProgressBar HScrollBar HTrackBar ListBox ListView MonthCalendar MultiLineEdit |
Picture PictureButton PictureHyperText PictureListBox RadioButton SingleLineEdit StaticText |
StaticHyperText Tab TreeView UserObject VProgressBar VScrollBar VTrackBar |
The following PowerBuilder controls/objects are unsupported by Microsoft UI Automation:
-
Graph
-
InkEdit
-
InkPicture
-
Line
-
OLE
-
Oval
-
Rectangle
-
RibbonBar
-
RoundRectangle
-
RichTextEdit
-
WebBrowser
Table 2: DataWindow presentation
styles supported by Microsoft UI
Automation
|
CrossTab FreeForm Grid Group |
Label N-Up Tabular TreeView |
DataWindow controls of the following presentation styles are
unsupported:
-
Graph
-
OLE 2.0
-
Composite
-
RichText
Table 3: Controls in DataWindow
supported by Microsoft UI
Automation
|
Button Column (and the following edit styles are supported: |
Computed Field GroupBox Text |
The following controls in DataWindow are unsupported by Microsoft UI Automation:
-
Graph
-
InkPicture
-
Line
-
OLE Object
-
Oval
-
Rectangle
-
RoundRectangle
-
Picture
-
Report
-
TableBlob
Examples
To enable support for PowerBuilder controls/objects through
Microsoft UI Automation, you will need to set the AccessibleName and AccessibleDescription properties in the controls’
Property tab page. Note that AccessibleRole property is unsupported by
Microsoft UI Automation.
The following statements set the AccessibleName and
AccessibleDescription properties for a command button in a
Window:
|
1 2 |
cb_1.accessiblename = "Delete" cb_1.accessibledescription = "Deletes selected text" |
The following statement sets the AccessibleName property of a
button in a DataWindow object:
|
1 |
dw_1.Object.b_1.accessiblename = "Update" |
Deployment
When you deploy an accessible application, you must deploy the
pbacc.dll and PBAccessibility.dll files.
For more information
For more information, refer to the PowerBuilder
VPATs report, and also the Microsoft general accessibility
website at http://www.microsoft.com/enable.
Also helpful is the WebAim website at http://www.webaim.org.