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