Object Roles

This topic describes the constant values used to describe the roles of various UI objects in an application. The role constants are defined in the Oleacc.h file.

You should use only role constants listed here; do not add custom roles or roles that are not predefined.

Before using these object roles, developers of client applications must use the Inspect tool to verify that object roles are being used by UI elements.

To retrieve the role of an object, clients call the IAccessible::get_accRole method, which must return one of the values described in the table. To retrieve a localized string that describes the object's role, clients call the GetRoleText function with the role value. The localized strings for the role values are in the oleaccrc.dll file.

Constant Description
ROLE_SYSTEM_ALERT
The object represents an alert or a condition that a user should be notified about. This role is used only for objects that embody an alert but are not associated with another user interface element, such as a message box, graphic, text, or sound.
ROLE_SYSTEM_ANIMATION
The object represents an animation control whose content changes over time, such as a control that displays a series of bitmap frames. Animation controls are displayed when files are copied or when some other time-consuming task is performed.
ROLE_SYSTEM_APPLICATION
The object represents a main window for an application.
ROLE_SYSTEM_BORDER
The object represents a window border. The entire border is represented by a single object rather than by separate objects for each side.
ROLE_SYSTEM_BUTTONDROPDOWN
The object represents a button that expands a list of items.
ROLE_SYSTEM_BUTTONDROPDOWNGRID
The object represents a button that expands a grid.
ROLE_SYSTEM_BUTTONMENU
The object represents a button that expands a menu.
ROLE_SYSTEM_CARET
The object represents the system caret.
ROLE_SYSTEM_CELL
The object represents a cell within a table.
ROLE_SYSTEM_CHARACTER
The object represents a cartoon-like graphic object, such as Microsoft Office Assistant, which is displayed to provide help to users of an application.
ROLE_SYSTEM_CHART
The object represents a graphical image used to chart data.
ROLE_SYSTEM_CHECKBUTTON
The object represents a check box control: an option that is selected or cleared independently of other options.
ROLE_SYSTEM_CLIENT
The object represents a window's client area. Microsoft Active Accessibility uses this role as a default if there is a question about the role of a UI element.
ROLE_SYSTEM_CLOCK
The object represents a control that displays time.
ROLE_SYSTEM_COLUMN
The object represents a column of cells within a table.
ROLE_SYSTEM_COLUMNHEADER
The object represents a column header, providing a visual label for a column in a table.
ROLE_SYSTEM_COMBOBOX
The object represents a combo box: an edit control with an associated list box that provides a set of predefined choices.
ROLE_SYSTEM_CURSOR
The object represents the system's mouse pointer.
ROLE_SYSTEM_DIAGRAM
The object represents a graphical image that is used to diagram data.
ROLE_SYSTEM_DIAL
The object represents a dial or knob.
ROLE_SYSTEM_DIALOG
The object represents a dialog box or message box.
ROLE_SYSTEM_DOCUMENT
The object represents a document window. A document window is always contained within an application window. This role applies only to MDI windows and refers to the object that contains the MDI title bar.
ROLE_SYSTEM_DROPLIST
The object represents the calendar control, SysDateTimePick32. The Microsoft Active Accessibility runtime component uses this role to indicate that either a date or a calendar control has been found.
ROLE_SYSTEM_EQUATION
The object represents a mathematical equation.
ROLE_SYSTEM_GRAPHIC
The object represents a picture.
ROLE_SYSTEM_GRIP
The object represents a special mouse pointer that allows a user to manipulate user interface elements such as windows. One example of this involves resizing a window by dragging its lower-right corner.
ROLE_SYSTEM_GROUPING
The object logically groups other objects. There is not always a parent-child relationship between the grouping object and the objects it contains.
ROLE_SYSTEM_HELPBALLOON
The object displays a help topic in the form of a tooltip or help balloon.
ROLE_SYSTEM_HOTKEYFIELD
The object represents a keyboard shortcut field that allows the user to enter a combination or sequence of keystrokes.
ROLE_SYSTEM_INDICATOR
The object represents an indicator, such as a pointer graphic, that points to the current item.
ROLE_SYSTEM_IPADDRESS
The object represents an edit control that is designed for an IP address. The edit control is divided into sections, each for a specific part of the IP address.
ROLE_SYSTEM_LINK
The object represents a link to something else. This object might look like text or a graphic, but it acts like a button.
ROLE_SYSTEM_LIST
The object represents a list box, allowing the user to select one or more items.
ROLE_SYSTEM_LISTITEM
The object represents an item in a list box or in the list portion of a combo box, drop-down list box, or drop-down combo box.
ROLE_SYSTEM_MENUBAR
The object represents the menu bar (positioned beneath the title bar of a window) from which users select menus.
ROLE_SYSTEM_MENUITEM
The object represents a menu item: an menu entry that the user can choose to carry out a command, select an option, or display another menu. Functionally, a menu item is equivalent to a push button, a radio button, a check box, or a menu.
ROLE_SYSTEM_MENUPOPUP
The object represents a menu: a list of options, each with a specific action. All menu types must have role, including the drop-down menus which are displayed when selected from a menu bar; and shortcut menus, which are displayed by clicking the right mouse button.
ROLE_SYSTEM_OUTLINE
The object represents an outline or a tree structure, such as a tree view control, that displays a hierarchical list and allows the user to expand and collapse branches.
ROLE_SYSTEM_OUTLINEBUTTON
The object represents an item that navigates like an outline item. The UP and DOWN ARROW keys are used to navigate through the outline. However, instead of expanding and collapsing when the LEFT and RIGHT ARROW key is pressed, these menus expand or collapse when the SPACEBAR or ENTER key is pressed and the item has focus.
ROLE_SYSTEM_OUTLINEITEM
The object represents an item in an outline or tree structure.
ROLE_SYSTEM_PAGETAB
The object represents a page tab. The only child of a page tab control is a ROLE_SYSTEM_GROUPING object that has the contents of the associated page.
ROLE_SYSTEM_PAGETABLIST
The object represents a container of page tab controls.
ROLE_SYSTEM_PANE
The object represents a pane within a frame or a document window. Users can navigate between panes and within the contents of the current pane, but cannot navigate between items in different panes. Thus, panes represent a grouping level that is lower than frames or document windows, but higher than individual controls. The user navigates between panes by pressing TAB, F6, or CTRL+TAB, depending on the context.
ROLE_SYSTEM_PROGRESSBAR
The object represents a progress bar, which dynamically shows how much of an operation in progress has completed. This control takes no user input.
ROLE_SYSTEM_PROPERTYPAGE
The object represents a property sheet.
ROLE_SYSTEM_PUSHBUTTON
The object represents a push-button control.
ROLE_SYSTEM_RADIOBUTTON
The object represents an option button (formerly, a radio button). It is one of a group of mutually exclusive options. All objects that share the same parent and that have this attribute are assumed to be part of a single mutually exclusive group. To divide these objects into separate groups, use ROLE_SYSTEM_GROUPING objects.
ROLE_SYSTEM_ROW
The object represents a row of cells within a table.
ROLE_SYSTEM_ROWHEADER
The object represents a row header, which provides a visual label for a table row.
ROLE_SYSTEM_SCROLLBAR
The object represents a vertical or horizontal scroll bar, which is part of the client area or is used in a control.
ROLE_SYSTEM_SEPARATOR
The object is used to visually divide a space into two regions. Examples of separator objects include a separator menu item, and a bar that divides split panes within a window.
ROLE_SYSTEM_SLIDER
The object represents a slider, which allows the user to adjust a setting in particular increments between minimum and maximum values.
ROLE_SYSTEM_SOUND
The object represents a system sound, which is associated with various system events.
ROLE_SYSTEM_SPINBUTTON
The object represents a spin box, which is a control that allows the user to increment or decrement the value displayed in a separate "buddy" control that is associated with the spin box.
ROLE_SYSTEM_SPLITBUTTON
The object represents a button on a toolbar that has a drop-down list icon that is directly adjacent to the button.
ROLE_SYSTEM_STATICTEXT
The object represents read-only text, such as labels for other controls or instructions in a dialog box. Static text cannot be modified or selected.
ROLE_SYSTEM_STATUSBAR
The object represents a status bar, which is an area at the bottom of a window and which displays information about the current operation, state of the application, or selected object. The status bar has multiple fields, which display different kinds of information.
ROLE_SYSTEM_TABLE
The object represents a table that contains rows and columns of cells, and, optionally, row headers and column headers.
ROLE_SYSTEM_TEXT
The object represents selectable text that allows edits or is designated as read-only.
ROLE_SYSTEM_TITLEBAR
The object represents a title or caption bar for a window.
ROLE_SYSTEM_TOOLBAR
The object represents a toolbar, which is a grouping of controls that provides easy access to frequently used features.
ROLE_SYSTEM_TOOLTIP
The object represents a tooltip that provides helpful hints.
ROLE_SYSTEM_WHITESPACE
The object represents blank space between other objects.
ROLE_SYSTEM_WINDOW
The object represents the window frame, which contains child objects such as a title bar, client, and other objects of a window.

Requirements

Requirement Value
Header
Oleacc.h