Progress
Programming
Handbook
Tab Order for a Frame Family
Once you have established the tab orders for the widgets of each frame in a frame family, the tab order proceeds according to these definitions:
- Tab-order widget — A tab-order widget is a widget in a frame’s tab order, and can be either a field-level widget or a child frame.
- Tab item — A tab item can only be a field-level widget that receives focus. If a child frame occupies a tab item position, the actual first tab item in the child frame is the first field-level widget descending in the tab order of the widgets owned by the child frame; the actual last tab item in the child frame is the last field-level widget descending in the tab order of the widgets owned by the child frame.
- Next tab item — If the current tab item is the last field-level widget in the frame family tab order, the next tab item is the first field-level widget in the frame family tab order. If the current tab item is the last tab-order widget of a child frame, the next tab item is the next widget in the tab order of the parent frame. If the next widget in the tab order of the parent frame is a field-level widget, the next tab item is that field-level widget. If the next widget in the tab order of the parent frame is a child frame, the next tab item is the first descendant tab item of the child frame. If the current tab item is not the last tab-order widget of a frame, the next tab item is determined from the next tab-order widget of the frame.
- Previous tab item — If the current tab item is the first field-level widget in the frame family tab order, the previous tab item is the last field-level widget in the frame family tab order. If the current tab item is the first tab-order widget of a child frame, the previous tab item is the previous widget in the tab order of the parent frame. If the previous widget in the tab order of the parent frame is a field-level widget, the previous tab item is that field-level widget. If the previous widget in the tab order of the parent frame is a child frame, the previous tab item is the last descendant tab item of the child frame. If the current tab item is not the first tab-order widget of a frame, the previous tab item is determined from the previous tab-order widget of the frame.
Note that you cannot tab between frame families, only within a single frame family.
Figure 25–2 shows a frame family with four frames. Thus, the tab-order widgets in frame FRAME 1 include:
The tab-order widgets in frame FRAME 2 include:
The tab-order widgets in frame Frame 4 include only fill-in Field4, and in frame FRAME 3 include buttons RED, GREEN, and BLUE, and fill-in Field3.
Figure 25–2: Frame Family Tab Order
![]()
However, the actual tab items include the respective RED, GREEN, and BLUE buttons and the Field1, Field2, Field3, and Field4 fill-ins.
The following procedure (
p-foftab.p
) displays the frames in Figure 25–2. Note that because FRAME f4 is assigned to the frame family before FRAME f3, f4 comes before f3 in the default tab order:
Copyright © 2004 Progress Software Corporation www.progress.com Voice: (781) 280-4000 Fax: (781) 280-4095 |