Progress
Programming
Handbook


Managing Dynamic Widgets

Although you can create and delete a dynamic widget at run time, you must specify the attributes and environment of a dynamic widget much more explicitly than for a static widget. Progress provides attributes that allow you to specify for dynamic widgets at run time most of the options that you specify for static widgets at compile time. While Progress automatically sets read-only attributes for dynamic widgets just as it does for static widgets, Progress provides fewer defaults for the attributes that you can set. In addition, you must use different 4GL statements to work with dynamic widgets than you typically do with static widgets.

Note that dynamic widgets do not adhere to scoping rules. That is, they exist until you delete them or the session ends. Thus, if you create a dynamic button in the FOR EACH loop of a subprocedure, that button continues to exist after the subprocedure returns. However, note that any widget handle variables are locally or globally scoped as you define them. Also, while dynamic widgets are not scoped, trigger definitions are scoped. Thus, for dynamic widgets, define persistent triggers or put your trigger definitions in a persistent procedure.


Copyright © 2004 Progress Software Corporation
www.progress.com
Voice: (781) 280-4000
Fax: (781) 280-4095