Appearance attributes
- Last Updated: December 21, 2023
- 3 minute read
- OpenEdge
- Version 13.0
- Documentation
These attributes affect the appearance of the object:
- HIDDEN — If this LOGICAL attribute is true, then the object is hidden and
does not appear even when its container is displayed. If it is false, then the
object does appear when its container is displayed. If you set the
HIDDENattribute of a container object, such as a window or frame, to true, then the container and all the objects in it are hidden. If you set it to false for a container, then the container and any contained objects that are not themselves hidden appear. This is an attribute you can set only at run time. The definition of an object cannot describe it as initially hidden. - VISIBLE — This LOGICAL attribute is not simply the opposite of
HIDDEN. Its relation toHIDDENcan be somewhat confusing to understand. Generally, you use it much less than theHIDDENattribute. Setting theVISIBLEattribute of an object to true forces it to be viewed. For example, setting theVISIBLEattribute of a field-level object in a window to true forces the window to be displayed even if it was previously hidden. By contrast, setting theHIDDENattribute to false does not force the container to be viewed. You can read all the details of the effects of theVISIBLEattribute in the ABL Reference. - SENSITIVE — This LOGICAL attribute determines whether an object is enabled
for input or not. Its use is parallel to the
ENABLEverb. That is, executing anENABLEstatement for an object is the same as setting itsSENSITIVEattribute to true. Similarly, executing aDISABLEstatement for an object is the same as setting itsSENSITIVEattribute to false. As with theHIDDENattribute, you can set theSENSITIVEattribute only at run time. This means that if you check the Enable toggle box or the Display toggle box on or off in the AppBuilder property sheet for an object when you are building a screen, you do not change theDEFINEstatement the AppBuilder generates for the object. Rather you change theENABLEandDISPLAYstatements the AppBuilder generates that execute when the window is initialized. - READ-ONLY — This LOGICAL attribute applies to data-representation objects and
prevents the user from modifying the field value. Sometimes you might want to
combine setting the Enable toggle box in a field’s property
sheet with setting the
READ-ONLYattribute to true. This gives a fill-in field some of the appearance of an enabled field (with its characteristic box outline, which can improve readability), but prevents the user from changing it. The CustOrders window uses this form for itsCustomerfill-ins. - HELP — This is the help text to display when the object is selected.
- TOOLTIP — This is the text to display when the user hovers the mouse over the
object. For data-representation objects, you can initialize the ToolTip text in the
frame definition for the object, such as in this excerpt from the frame definition
for the CustOrders window:
DEFINE FRAME CustQuery . . . Customer.City AT ROW 7.19 COL 13 COLON-ALIGNED VIEW-AS FILL-IN SIZE 27 BY 1 TOOLTIP "Enter the City" . . .For other types of objects, you can specify the ToolTip text as part of the object definition, as in this button definition:DEFINE BUTTON BtnFirst LABEL "First" SIZE 15 BY 1.14 TOOLTIP "Press this to see the first Customer.". - LABEL — This CHARACTER attribute is the label of the field or button.
- SELECTABLE — You can set up most visual objects for direct manipulation. This
means that the user can actually select, move, and resize the object at run time
just as you can move and resize objects in a design window in the AppBuilder. The
AppBuilder uses these attributes to provide you with the behavior you see in a
design window, where you can drag objects around to where you want them. The
SELECTABLEattribute is a LOGICAL value which, if true, allows the user to select the object by clicking on it with the mouse. It then sprouts the characteristic resize handles around the object border that let the user size or move it. - RESIZABLE — You can set this LOGICAL attribute to true to let a user change
the size of an object at run time. You must also set the
SELECTABLEattribute to true to provide the resize handles. - MOVABLE — You can set this LOGICAL attribute to true to let a user move an
object at run time. You do not need to set the
SELECTABLEattribute to make an object movable. The user can move the object without using its resize handles. However, it is considered a more standard user provision to setSELECTABLEalong withMOVABLE.