Customizing the metamodel > What you can do with USRPROPS/SAPROPS > Layout capabilities > Positioning
  
Positioning
The syntax for exact placement is:
PLACEMENT { PROPPOS(n,n) PROPSIZE(n,n) }
or
PLACEMENT { LABELPOS (n,n) PROPPOS(n,n) PROPSIZE(n,n) }
Examples
In the following example, PROPPOS (4,12) puts the control 4 windows units horizontally, and 12 windows units vertically from the upper left-hand corner of the dialog. Or, to put it another way, 4 units to the left of the upper left-hand corner of the dialog, and 12 units down from that corner. PROPSIZE (150,40) makes the control 150 windows units wide and 40 windows units long.
PLACEMENT { PROPPOS(4,12) PROPSIZE(150,40) }
In the following example, LABELPOS puts the label for the control 4 windows units horizontally, and 2 windows units vertically from the upper left-hand corner of the dialog. The label, therefore, is the same distance from the edge of the dialog, but 10 windows units above the control.
PLACEMENT { LABELPOS (4,2) PROPPOS(4,12) PROPSIZE(150,40) }
Example from SAPROPS.CFG
The following text is a portion of the syntax from SAPROPS.CFG for the Entity Definition dialog.
CHAPTER "SQL Server Triggers & Table Segment" GROUP "Default Referential Integrity Triggers" LABEL "Default Referential Integrity" { LAYOUT { COLS 1 ALIGN LABEL TAB }
PROPERTY "Insert Trigger Name" { EDIT Text LENGTH 31 LABEL "Insert Trigger" PLACEMENT {LABELPOS(4, 24) PROPPOS(50, 24) PROPSIZE(110, 12)} }
PROPERTY "Update Trigger Name" { EDIT Text LENGTH 31 {LABEL "Update Trigger" PLACEMENT {LABELPOS(4, 38) PROPPOS(50, 38) PROPSIZE(110, 12)} }
PROPERTY "Delete Trigger Name" { EDIT Text LENGTH 31 LABEL "Delete Trigger" PLACEMENT {LABELPOS(4, 52) PROPPOS(50, 52) PROPSIZE(110, 12)} } }
See also
Layout capabilities