To control operation of a character browse, ABL provides a set of dedicated control keys. These control keys apply differently in row mode or edit mode. However, in both modes, any control key that changes (or attempts to change) the selected row fires the VALUE-CHANGED event.

These control keys correspond to ABL key functions that you can redefine. In Windows, you can redefine them in the registry or in an initialization file. On UNIX, you can redefine them in the PROTERMCAP file. For more information on redefining control key functions, see the section on user interface environments in Manage ABL Applications.

The following table describes the key functions, default key labels, and operation of the row mode control keys.

Table 1. Row mode control keys
Key functions Default key labels Description
" "1 SPACE BAR Fires the VALUE-CHANGED event. In multiple selection mode, this key also selects and deselects the row that has focus, alternately displaying and erasing the tick mark.
CURSOR-LEFT CURSOR-LEFT Scrolls the browse horizontally one column to the left.
CURSOR-RIGHT CURSOR-RIGHT Scrolls the browse horizontally one column to the right.
CURSOR-DOWN CURSOR-DOWN Moves focus down one row.
CURSOR-UP CURSOR-UP Moves focus up one row.2
END ESC+. Moves focus to the last row in the browse.2
HOME ESC+, Moves focus to the first row in the browse.2
PAGE-DOWN ESC+CURSOR-DOWN Pages down one full page of data.2
PAGE-UP ESC+CURSOR-UP Pages up one full page of data.2
REPLACE ESC+R Changes the browse to edit mode, places focus in the first enabled cell of the currently focused row, and fires the VALUE-CHANGED event. In multiple selection mode, this key also selects the focused row and deselects any other selected rows. If you specify NO-ROW-MARKERS in the browse definition or set the ROW-MARKERS attribute to FALSE, REPLACE has no effect.
RETURN RETURN Fires the DEFAULT-ACTION event.
TAB TAB Leaves the browse and sets input focus to the next sibling of the browse in the tab order.

The following table describes the key functions, default key labels, and operation of the edit mode control keys.

Table 2. Edit mode control keys
Key function Default key label Description
" "3 SPACE BAR Enters a space or zeroes numeric data in the focused cell.
CURSOR-LEFT CURSOR-LEFT Moves the cursor one character to the left in the cell. (Does not leave the cell.)
CURSOR-RIGHT CURSOR-RIGHT Moves the cursor one character to the right in the cell. (Does not leave the cell.)
CURSOR-DOWN CURSOR-DOWN Moves focus down to the next cell in the column and fires the VALUE-CHANGED event.
CURSOR-UP CURSOR-UP Moves focus up to the previous cell in the column and fires the VALUE-CHANGED event.
BACK-TAB CTRL+U Moves focus to the previous enabled cell in the browse (right to left, bottom to top). When focus is on the first cell, BACK-TAB does not function.
EDITOR-TAB CTRL+G Moves focus to the next enabled cell in the browse (left to right, top to bottom).4 When focus is on the last cell, the EDITOR-TAB does not function.
END ESC+. Moves focus to the last cell in the current column and fires the VALUE-CHANGED event.
HOME ESC+, Moves focus to the first cell in the current column and fires the VALUE-CHANGED event.
PAGE-DOWN ESC+CURSOR-DOWN Pages down one full page of data and fires the VALUE-CHANGED event.
PAGE-UP ESC+CURSOR-UP Pages up one full page of data and fires the VALUE-CHANGED event.
REPLACE ESC+R Changes the browse to row mode, with selection set to the currently focused row.
RETURN RETURN Moves focus to the next cell in the current column and fires the VALUE-CHANGED event.
TAB TAB Leaves the browse and sets input focus to the next sibling widget of the browse in the tab order.
1 Note that ABL has no key function identifier for the space bar. In code, you reference a character string containing a single space (" ").
2 In single selection mode, this also fires the VALUE-CHANGED event because selection follows focus.
3 Note that ABL has no key function identifier for the space bar. In code, you reference a character string containing a single space (" ").
4 If this action changes or attempts to change the selected row, it also fires the VALUE-CHANGED event.