Top Property (Visual FoxPro)

Specifies the distance between the top edge of a control or form and its container object. Available at design time and run time.

Object.Top[ = nValue]

Return Value

  • nValue
    Specifies the distance between the top edge of an object or form and the top edge of its container object.

    The default container for a form is the main Visual FoxPro window.

Remarks

Applies To: CheckBox | ComboBox | CommandButton | CommandGroup | Container Object | Control Object | Custom | EditBox | Form | Grid | Image | Label | Line | ListBox | OLE Bound Control | OLE Container Control | OptionButton | OptionGroup | PageFrame | _SCREEN | Shape | Spinner | TextBox | Timer | ToolBar

The Top property specifies how far from the object's zero position the object is located. For example, if a form is contained within the Visual FoxPro main window, the zero position is immediately below the system menu, or if a toolbar is docked to the top of the main window, immediately below the toolbar.

Use the Left and Top and the Height and Width properties for operations based on an object's external dimensions, such as moving or resizing.

Note

The Top property is read-only when it applies to a control contained in a Column object.

The unit of measurement used by the Top property is determined by the control's ScaleMode property setting.

Example

The following example demonstrates how the Top property is used to position controls on a form. The AddObject method is used to add a Line control and three command buttons to a form. The Top property specifies the vertical placement of each control on the form.

frmMyForm = CREATEOBJECT('Form')  && Create a Form
frmMyForm.Closable = .F.  && Disable the window pop-up menu

frmMyForm.AddObject('shpLine','Line')  && Add a Line control to the form
frmMyForm.AddObject('cmdCmndBtn1','cmdMyCmndBtn1')  && Up Cmnd button
frmMyForm.AddObject('cmdCmndBtn2','cmdMyCmndBtn2')  && Down Cmnd button
frmMyForm.AddObject('cmdCmndBtn3','cmdMyCmndBtn3')  && Quit Cmnd button

frmMyForm.shpLine.Visible = .T.  && Make Line control visible
frmMyForm.shpLine.Top = 20  && Specify Line control row
frmMyForm.shpLine.Left = 125  && Specify Line control column

frmMyForm.cmdCmndBtn1.Visible =.T.  && Up Command button visible
frmMyForm.cmdCmndBtn2.Visible =.T.  && Down Command button visible
frmMyForm.cmdCmndBtn3.Visible =.T.  && Quit Command button visible

frmMyForm.SHOW  && Display the form
READ EVENTS  && Start event processing

DEFINE CLASS cmdMyCmndBtn1 AS COMMANDBUTTON  && Create Command button
   Caption = 'Slant \<Up'  && Caption on the Command button
   Left = 50  && Command button column
   Top = 100  && Command button row
   Height = 25  && Command button height
   
   PROCEDURE Click
      ThisForm.shpLine.Visible = .F.  && Hide the Line control
      ThisForm.shpLine.LineSlant ='/'  && Slant up
      ThisForm.shpLine.Visible = .T.  && Show the Line control
ENDDEFINE

DEFINE CLASS cmdMyCmndBtn2 AS CommandButton  && Create Command button
   Caption = 'Slant \<Down'  && Caption on the Command button
   Left = 200  && Command button column
   Top = 100  && Command button row
   Height = 25  && Command button height

   PROCEDURE Click
      ThisForm.shpLine.Visible = .F.  && Hide the Line control
      ThisForm.shpLine.LineSlant ='\'  && Slant down
      ThisForm.shpLine.Visible = .T.  && Show the Line control
ENDDEFINE

DEFINE CLASS cmdMyCmndBtn3 AS CommandButton  && Create Command button
   Caption = '\<Quit'  && Caption on the Command button
   Cancel = .T.  && Default Cancel Command button (Esc)
   Left = 125  && Command button column
   Top = 150  && Command button row
   Height = 25  && Command button height

   PROCEDURE Click
      CLEAR EVENTS  && Stop event processing, close Form
ENDDEFINE

See Also

Reference

Left Property (Visual FoxPro)

Height Property

Move Method (Visual FoxPro)

ScaleMode Property

Width Property

Other Resources

Properties (Visual FoxPro)

Language Reference (Visual FoxPro)