Previous Next

SELF system handle
A handle to the object or widget associated with the currently executing user‑interface trigger or event procedure.
Syntax 
 
SELF [ :attribute ]
attribute
An attribute of the object or widget associated with the trigger or event procedure.
Attributes
The specific attributes available depend on the type of the object or widget. You can determine the object or widget type by examining the SELF:TYPE attribute.
Example 
The following example uses the SELF handle to display the starting and ending positions of an object you move:
 
DEFINE BUTTON b_quit LABEL "Quit"
  TRIGGERS:
    ON CHOOSE QUIT.
  END.
 
DEFINE VARIABLE x AS CHARACTER NO-UNDO INITIAL "MOVE ME".
 
DEFINE FRAME move
  x NO-LABEL
  WITH SIZE 80 BY 10 TITLE "Move/Resize Widget".
 
ASSIGN 
  x:MOVABLE    = TRUE
  x:SELECTABLE = TRUE.
 
DEFINE FRAME butt-frame
  b_quit
  WITH CENTERED ROW SCREEN-LINES - 1.
 
ON END-MOVE OF x IN FRAME move
  DISPLAY 
    SELF:FRAME-ROW
    SELF:FRAME-COL
    WITH FRAME end-info CENTERED ROW 14 TITLE "End Position".
 
ON START-MOVE OF x IN FRAME move
  DISPLAY 
    SELF:FRAME-ROW
    SELF:FRAME-COL 
    WITH FRAME info CENTERED ROW 12 TITLE "Start Position".    
 
ENABLE b_quit WITH FRAME butt-frame.
DISPLAY x WITH FRAME move.
ENABLE x WITH FRAME move.
 
WAIT-FOR CHOOSE OF b_quit IN FRAME butt-frame FOCUS x.
Notes 
*
*
 
DEFINE VARIABLE fname AS CHARACTER NO-UNDO FORMAT "x(30)" LABEL "Name".
 
DEFINE FRAME FillFrame fname WITH SIDE-LABELS.
 
ON ENTRY OF fname IN FRAME FillFrame DO:
  APPLY "ENTRY" TO SELF.
  SELF:AUTO-ZAP = TRUE.
END.
This makes SELF = FOCUS, which allows the new AUTO-ZAP value to take effect. For more information on the AUTO-ZAP attribute, see the “Handle Attributes and Methods Reference” section.
*
*
*
See also 
Asynchronous request object handle, COM-SELF system handle, FOCUS system handle, LAST-EVENT system handle

Previous Next
© 2013 Progress Software Corporation and/or its subsidiaries or affiliates.