Try OpenEdge Now
skip to main content
ABL Reference
Handle Attributes and Methods Reference : SENSITIVE attribute

SENSITIVE attribute

Indicates whether a widget can receive input focus or events. Indicates whether certain ABL objects can receive events.
Data type: LOGICAL
Access: Readable/Writeable
Applies to: BROWSE widget, BUTTON widget, COMBO-BOX widget, CONTROL-FRAME widget, DIALOG-BOX widget, EDITOR widget, FIELD-GROUP widget, FILL-IN widget, FRAME widget, IMAGE widget, LITERAL widget, MENU widget, MENU-ITEM widget, RADIO-SET widget, RECTANGLE widget, SELECTION-LIST widget, Server socket object handle, SLIDER widget, Socket object handle, SUB-MENU widget, TEXT widget, TOGGLE-BOX widget, WINDOW widget
For widgets, if the SENSITIVE attribute is TRUE, the user can give input focus to the widget or can select, move, or resize it (if other attributes are set). A field-level widget must be specified in a frame before you can set the SENSITIVE attribute. The ENABLE statement implicitly sets this attribute to TRUE, and the DISABLE statement sets it to FALSE.
If the READ-ONLY attribute is TRUE for the widget, the SENSITIVE attribute has no effect except to grey out the widget in some environments.
You can use the SENSITIVE attribute to reset the MODIFIED attribute. For example, when the screen-value of a fill-in field is changed, MODIFIED is set to TRUE. If you then set SENSITIVE to FALSE and then to TRUE, you enable the fill-in for further input and the MODIFIED attribute is reset to FALSE.
For the socket and server socket objects, the SENSITIVE attribute indicates whether the object can receive events. The default value of this attribute is TRUE for socket and server socket objects.
If the SENSITIVE attribute is set to FALSE for the socket object, the AVM will not execute the READ-RESPONSE procedure for the socket even if the READ-RESPONSE event occurs.
If the SENSITIVE attribute is set to FALSE for the server socket object, the AVM will stop accepting connections on the port associated with the server socket.
Note: If an application knows it will not receive data on a socket during some period of time, it should set this attribute to FALSE. This allows the application to run more efficiently since the AVM does not monitor the socket if its SENSITIVE attribute is set to FALSE. Data can still be written to an insensitive socket object. When the attribute is set to TRUE, the AVM checks the socket for data.