FormProxy objects
- Last Updated: January 17, 2024
- 2 minute read
- OpenEdge
- Version 12.8
- Documentation
ABL provides the Progress.Windows.FormProxy class
solely as a form object for referencing each ABL window that you
create in a session. A FormProxy object has no
visualization of its own and serves only to provide the ProWinHandle property used to access
its associated ABL window and the PrevForm and NextForm properties to reference that
ABL window on the form chain. When an ABL session references .NET forms
in any way, the AVM automatically creates a FormProxy object
for each ABL window that you create. For example, such a reference
can include querying the FIRST-FORM or LAST-FORM attribute on the SESSION handle, even if you have not
yet instantiated any .NET forms in the session. If the first
reference to a .NET form occurs after ABL windows are already
created, the AVM also automatically creates the necessary FormProxy objects
retroactively.
You cannot directly instantiate a FormProxy object or
explicitly delete an existing FormProxy object
using the DELETE OBJECT statement, and any attempt
to do so raises a run-time error. ABL automatically deletes any FormProxy object
associated with an ABL window, when you delete the window using
the DELETE OBJECT statement.
In addition to linking all windows that you create together with
the forms that you create on the form chain, ABL uses the FormProxy object
to identify its associated ABL window when that window is the most
recent form or window to receive focus in a session. For more information
on identifying the most recent form or window to receive focus,
see Handle form and window input.
FormProxy object
to reference the default window for an ABL session. GUI applications
typically do not use the default window and you can access the default
window, if necessary, using the DEFAULT-WINDOW system
handle. For more information on this system handle in an ABL session
accessing .NET forms, see Table 1.