LAST-EVENT :attribute
This procedure creates a variety of widgets and a frame that acts as a message area. As you move around the widgets the procedure tells you what events ABL generates.
DEFINE VARIABLE msg_watcher AS CHARACTER NO-UNDO FORMAT "x(50)".DEFINE VARIABLE fi AS CHARACTER NO-UNDO FORMAT "x(50)"LABEL "Fill-in".DEFINE VARIABLE edit AS CHARACTER NO-UNDOVIEW-AS EDITOR SIZE 10 BY 2.DEFINE VARIABLE txt0 AS CHARACTER NO-UNDO FORMAT "x(75)".DEFINE BUTTON exit LABEL "Go to Exit" AUTO-GO.DEFINE BUTTON test LABEL "Test" SIZE 15 BY 3.DISPLAY "Feel free to move around..." VIEW-AS TEXT SKIPfi SKIP(0.1)edit AT 2 SKIP(0.1)test AT 10 exit AT 50 SKIP(0.5)WITH FRAME f SIDE-LABELS.DISPLAY txt0 LABEL "LAST-EVENT:LABEL FUNCTION (TYPE) > SELF:TYPE LABEL"WITH FRAME report 4 DOWN CENTERED TITLE "Messages".ON RETURN, TAB, ANY-PRINTABLE, GO ANYWHERERUN msgwatch. /* This procedure uses LAST-EVENT. */ENABLE ALL WITH FRAME f.WAIT-FOR GO OF FRAME f FOCUS fi.PROCEDURE msgwatch.txt0 = LAST-EVENT:LABEL + " " + LAST-EVENT:FUNCTION + " [" +LAST-EVENT:EVENT-TYPE + "]-->" + SELF:TYPE + " "txt0 = txt0 + (IF CAN-QUERY(SELF, "LABEL") THENSELF:LABEL ELSE STRING(SELF).DISPLAY txt0 WITH FRAME report.DOWN WITH FRAME report.END PROCEDURE.
![]()
For keyboard events, the CODE, FUNCTION, and LABEL attributes return the key code, key function, and key label of the event, respectively. For all other events the CODE attribute returns the numeric event code.For mouse events, the FUNCTION attribute returns the names of portable mouse events and the LABEL attribute returns the names of three‑button mouse events.For high‑level ABL events, the FUNCTION attribute returns the name of the event. If the ABL event is triggered by a key press, the LABEL attribute returns the key label. Otherwise, it returns the event name, as with the FUNCTION attribute.
![]()
The ON-FRAME-BORDER attribute indicates whether a MOUSE event occurred in the border of a frame.
![]()
For browse widgets, WIDGET-ENTER and WIDGET-LEAVE are different depending on whether the browse is editable or read‑only. For editable browse widgets, WIDGET-ENTER contains the handle of the column with focus. For read‑only browse widgets, WIDGET-ENTER contains the handle of the browse. For editable brows widgets, WIDGET-LEAVE contains the handle of the column the user just left. For read‑only browse widgets, WIDGET-LEAVE contains the handle of the field‑level widget the user just left.
© 2012 Progress Software Corporation and/or its subsidiaries or affiliates. |