Page History
...
The AddCtrls method adds one or more preexisting OI controls to the panel. Typically, these are control controls that already exist on the same form as the SRP Panel control. If successfully added, the controls are moved from the OI form into the panel.
...
Pos | Name | Type | Description |
---|---|---|---|
<1, 1> | Handle | Integer | The windows handle to the control to add, returned from its HANDLE property |
<1, 2> | X | Integer | The control's x position in the panel |
<1, 3> | Y | Integer | The control's y position in the panel |
<1, 4> | Width | Integer | The control's width in the panel |
<1, 5> | Height | Integer | The control's height in the panel |
<1, 6> | Color | Color | The control's text color |
<1, 7> | Background | Color | The control's background color |
The first value for each field is the windows handle (HWND) to the control, is you can get by getting the control's HANDLE property.
...
Value | Description |
---|---|
X | When negative, the left edge of the control is placed that many pixels from the right edge. For example, -500 places the left edge of the control 500 pixels from the right edge of the panel. This is equivalent to selecting Right Anchor in Form Designer. |
Y | When negative, the top edge of the control is placed that many pixels from the bottom edge. For example, -1000 places the top edge of the control 1000 pixels from the bottom edge of the panel. This is equivalent to selecting Bottom Anchor in Form Designer. |
Width | When negative, the right edge of the control is placed that many pixels from the right edge. For example, -10 places the right edge of the control 10 pixels from the right edge of the panel. This is equivalent to selecting Autosize Width in Form Designer. |
Height | When negative, the bottom edge of the control is placed that many pixels from the bottom edge. For example, -20 places the bottom edge of the control 20 pixels from the bottom edge of the panel. This is equivalent to selecting Autosize Height in Form Designer. |
Color
Don't use the Form Designer to set the control's colors if you plan to put it into a Panel control. It won't stick. There are technical reasons for this, but the easiest work around is to pass the desired foreground and background colors into this method.
Example
Code Block |
---|
CtrlArray = "" // Add the label, placing it in the same place it was added to the form hWnd = Get_Property(@Window:".LABEL", "HANDLE") OrigSize = Get_Property(@Window:".LABEL", "ORIG_SIZE") Convert @FM to @VM in OrigSize CtrlArray<-1> = hWnd:@VM:OrigSize // Add the editline, placing it in the same place it was added to the form hWnd = Get_Property(@Window:".EDITLINE", "HANDLE") OrigSize = Get_Property(@Window:".EDITLINE", "ORIG_SIZE") Convert @FM to @VM in OrigSize CtrlArray<-1> = hWnd:@VM:OrigSize // Add the controls Send_Message(@Window:".OLE_PANEL", "OLE.AddCtrls", CtrlArray) |