CONTROL-FRAME widget

(Windows only; Graphical interfaces only)

A control-frame is a field-level widget that holds an ActiveX control that you select for your application from the OpenEdge AppBuilder. A control-frame is always created dynamically.

A control-frame has no visualization.

The AVM instantiates two separate but related objects when you create a control-frame:

The widget itself provides a connection between the ActiveX control and the ABL user interface. When the widget is realized, the AVM creates a COM object that provides the real ActiveX control container support. Thus, the control-frame widget provides widget attributes and methods to manage the ABL side of the interface, while the control-frame COM object provides COM object properties and methods to gain access to the control itself.

When you insert an ActiveX control into your application, the AppBuilder creates a control-frame with the CREATE widget statement and specifies a default name (NAME attribute value) for the widget. The AppBuilder creates a design-time instance of the ActiveX control based on the control you select in the AppBuilder, making its design-time properties available to the AppBuilder. When you save your application, the AppBuilder saves the design-time instance in a separate file (with .wrx extension) for use at run time.

At run time, your application accesses the control indirectly through the control-frame widget. First, you use the COM-HANDLE attribute to return a component handle to the control-frame COM object. Second, you use this handle to access properties and methods of the control-frame COM object, which provide access to the ActiveX control itself.

This is a SmartViewer into which a developer, using the AppBuilder, has dropped a literal widget, a fill-in widget, and a control-frame widget. The control-frame widget holds a Crescent spin control, as shown:



Attributes

Control-frame widget attributes

Properties

Control-frame COM object properties1

Methods

Control-frame widget methods:

Control-frame COM object methods:4

Events

Developer events BACK-TAB navigation key function event
END-ERROR universal key function event ENTRY
GO universal key function event HELP universal key function event
LEAVE TAB navigation key function event

Notes

See also

CREATE widget statement, The chapter on ActiveX control container support in OpenEdge Development: Programming Interfaces