Setting Properties

You can set the properties of an object at run time or design time.

To set a property

  • Use this syntax:

    Container.Object.Property = Value

    For example, the following statements set various properties of a text box named txtDate on a form named frmPhoneLog:

    frmPhoneLog.txtDate.Value = DATE( ) && Display the current date  
    frmPhoneLog.txtDate.Enabled = .T. && The control is enabled  
    frmPhoneLog.txtDate.ForeColor = RGB(0,0,0)    && black text  
    frmPhoneLog.txtDate.BackColor = RGB(192,192,192)  && gray background  
    

For the property settings in the preceding examples, frmPhoneLog is the highest-level container object. If frmPhoneLog were contained in a form set, you would also need to include the form set in the parent path:

frsContacts.frmPhoneLog.txtDate.Value = DATE( )

Setting Multiple Properties

The WITH ... ENDWITH structure simplifies setting multiple properties. For example, to set multiple properties of a column in a grid in a form in a form set, you could use the following syntax:

WITH THISFORMSET.frmForm1.grdGrid1.grcColumn1
 .Width = 5
 .Resizable = .F.
 .ForeColor = RGB(0,0,0)
 .BackColor = RGB(255,255,255)
 .SelectOnEntry = .T.
ENDWITH

See Also

Object-Oriented Programming | Classes and Objects: The Building Blocks of Applications | Classes in Visual FoxPro | Preparation for Class Creation | Creating Classes | Modifying a Class Definition | Subclassing a Class Definition | Operating the Class Designer | Class Member Protection and Hiding | Specifying Design-Time Appearance for a Class | Creating, Copying, and Removing Class Library Files | Adding Classes to Forms | Default Property Setting Override | Container Hierarchy Object Referencing | Calling Methods | Event Response