Progress
Programming
Handbook
Multiple-window Pros and Cons
There are several reasons why you might want to use more than one window in an application:
- Maximizing use of screen space — The simplest reason for using an additional window is to get more screen space. In some cases, you can avoid using a new window by enlarging the existing window or overlaying frames.
- Grouping functionality — You can use multiple windows to group widgets that are logically related. Each window can have its own menu bar with submenus related to those specific widgets. You can also group related windows into window families, hierarchies of parent and child windows.
- Providing greater user control — By placing information in multiple windows, you can provide greater access to application functions. This also gives the user the ability to move the windows (functionality) around the screen. The user can choose to put one window in front of another or to minimize a window that is not currently needed.
NOTE: You cannot enable fields for update in more than one copy of the same frame—even if the copies are in different windows. If you want to be able to update multiple copies of the frame, you must create separate frames for each window.- Displaying multiple copies of the same frame — You can only display a specific frame once in a window. This can be a limitation, for example, if you want to show all the order items associated with an order. You can define the frame once (in a subprocedure or trigger) and view it in several windows simultaneously, populating each copy with different data.
There are several disadvantages to using multiple windows in an application:
- Window management — You must manage the windows yourself. Specifically, you must ensure that windows are deleted when appropriate, usually when the controlling procedure goes out of scope.
- Widget access — In a multi-window interface, one window may become concealed behind another or inadvertently minimized, losing immediate access to application widgets. This may cause confusion for the user.
- Lack of interface portability — Since Progress supports only a single window in character interfaces, you cannot directly port a multi-window application to a character interface.
- Transaction management — Even though you may have several windows on the screen, you can only have one transaction active at a time. Undoing work in one window might cause work in another window to be undone also.
Copyright © 2004 Progress Software Corporation www.progress.com Voice: (781) 280-4000 Fax: (781) 280-4095 |