Parameter ctype specifies any valid combination of options from the following table. The symbols come from ashell.def.
Also see the ctype2 parameter.
Symbol |
Value |
Description |
---|---|---|
MBF_BUTTON |
&h00000000 |
(default control type) A rectangular button, which displays a text string and is virtually always associated with a click action. See Button Control. |
MBF_CMDLIN |
&h00000000 |
(default cmd type) Clicking the control causes the contents of cmd to be executed as a Windows command line, as if it had been executed via XCALL HOSTEX. See the cmd topic. |
MBF_DLL |
&h00000001 |
DLL. Clicking the button causes the function (func) with the associated DLL (defined in cmd) to be loaded and executed. |
MBF_CHKBOX |
&h00000004 |
Checkbox. Clicking on the button toggles the checkmark display, as well as the value of the one-byte parameter (0 for unchecked, 1 for checked) in func. See Checkbox Control. |
MBF_3STATE |
&h00000008 |
Three-state checkbox. Same as a regular checkbox except it has three states: unchecked (0), checked (1), and indeterminate (2). |
MBF_AUTORADIOBTN |
&h00000010 |
Radio button. Used in a group (see MBF_GROUPBOX) of two or more radio buttons. Similar to MBF_CHECKBOX except that only one may be selected at a time. Although popular in Windows forms, from a programming standpoint, they are more complex and less efficient than and INFLD combo box (which otherwise accomplishes the same task of allowing the selection of just one from a short list of choices. See Checkbox Alignment, Justification. |
MBF_RADIOBTN |
&h00000010 |
Same as MBF_AUTORADIOBTN. |
MBF_HCENTER |
&h000000C0 |
Horizontal centering of control text (at top). Applies to static (MBF_STATIC), button (MBF_BUTTON) controls only, with text or images (MBF_BITMAP). For horizontal MBF_TOOLBAR controls, centers the buttons horizontally in the toolbar. See Control Alignment. Also see the MBST_?CENTER flags in cstate. |
MBF_CENTER |
&h000000E0 |
Centering along both axes. See above comment for MBF_HCENTER. |
MBF_VCENTER |
&h00000020 |
Vertically center text or image within the control. Applies mainly to static text controls, which otherwise default to top alignment. Also see MBST_CENTER in cstatefor centering an entire control on its parent, and Control Alignment. |
MBF_LFTEXT |
&h00000020 |
For controls such as checkboxes, that contain a text element and some other element, specifies that the text element appear to the left of the other element. (Default is to the right.) |
MBF_DLGNOPARENT |
&h00000020 |
Force dialog box to be a child of the desktop (sibling of the main A-Shell window) rather than a child of the main A-Shell window (both of which involve setting the parentid parameter to 0). For non-dialog controls, also see MBF2_NOAUTOPARENT. |
MBF_LFJUST |
&h00000040 |
Left justify text. (Default is center.) Note that for checkboxes, this affects only the justification of the text within the space allotted to it, not whether the text is to the left or right of the checkbox. See MBF_LFTEXT above. |
MBF_RTJUST |
&h00000080 |
Right justify text. (Default is centered.) See MBF_LFJUST above. Note that for MBF_TOOLBAR, justifies the buttons within a horizontal toolbar (buttons are left-justified by default). |
MBF_BITMAP |
&h00000100 |
Use with buttons (MBF_BUTTON) or static text controls (MBF_STATIC) to display an image instead of text in the control. ctext is interpreted as the filespec (either AMOS or native) or a DLL bitmap resource (resname::dllname); supported types are BMP, JPG, TIF, PCX, PNG. For buttons, the image will be stretched to fill the button. For static controls, see MBF_NODISTORT, MBF_HCENTER, MBF_VCENTER and MBF_CENTER, and Image Control. |
MBF_SYSMENU |
&h00000100 |
For dialogs (MBF_DIALOG), this causes the dialog to sport an "X" (aka system menu) in the upper right corner allowing it to be closed by clicking on it. See Modal Dialog Box. |
MBF_ICON |
&h00000200 |
Icon. Applies to both button (MBF_BUTTON) and static (MBF_STATIC) control types. See Icon Control. |
MBF_TABSTOP |
&h00000400 |
Indicates that the control is part of the group of controls that may receive the focus by tabbing between them. This is automatic for MBF_BUTTON, but may optionally be applied to MBF_CHKBOX, MBF_3STATE, MBF_AUTORADIOBTN and MBF_STATIC controls. Currently this is only applicable in conjunction with the AUI EVENTWAIT class. |
MBF_MAXBUTTON |
&h00000400 |
For dialogs with MBF_ALTPOS and MBF_SYSMENU options set, enables the maximize button. |
MBF_SEP |
&h00000800 |
Separator. |
MBF_DLGNOCREEP |
&h00000800 |
Dialog No Creep applies to nested dialogs, forcing their coordinates to be interpreted relative to the main window, rather than to the parent dialog. |
MBF_AUTOGROW |
&h00000800 |
For static text controls (MBF_STATIC), causes the control to automatically grow as needed to contain the text. For left justified text (MBF_LFJUST), the left edge will be determined by scol, while ecol is treated only as a minimum size. (The actual right edge of the control will be shifted to the right as needed to contain the text.)
For right justified text (MBF_RTJUST), the right edge is set by ecol and expands to the left as needed (with scol establishing the minimum). The bottom edge of the control will also be shifted if necessary to contain the height of the text. MBF_AUTOGROW is not compatible with MBF_WRAP. |
MBF_SUNKEN |
&h00001000 |
For static text controls (MBF_STATIC), causes them to appear with an "sunken" edge. |
MBF_READONLY |
&h00001000 |
Read only (with MBF_EDIT). |
MBF_XCLASS |
&h00002000 |
Set internally for certain special control classes. |
MBF_UPDOWN |
&h00004000 |
This is a special-purpose option. Generally you would not use this flag directly, unless you wanted to create an Up-Down control independent of INFLD. In that case, use MBF_EDIT + MBF_UPDOWN (+ any other relevant flags); set WINCLASS$ = "ASHEDIT", and WINSTYLE to any valid ES_xxx flags (Windows Edit control styles). Such a control will allow the user to change the value by clicking on the Up-Down buttons, independent of any signals or actions by the application. You would need to use the AUI_CONTROL CTLOP_INFO function to retrieve the current value of the field. |
MBF_TOOLBAR |
&h00008000 |
The Toolbar Control creates a Windows-typical toolbar across the top of the parent window. |
MBF_KBD |
&h00010000 |
Keyboard. Clicking on the control causes the contents of cmd to be forced into the keyboard buffer. See cmd for specifications and hints on how to use this technique effectively. Note that MBF_KBD is ignored if MBF_SHLEXC, MBF_CMDLIN, or MBF_DLL are set. |
MBF_SHLEXC |
&h00020000 |
Shell execute. Clicking the button causes the contents of cmd to be interpreted as an object (file or URL) to be opened using the associated application defined in the Windows Registry. See cmd notes. |
MBF_STATIC |
&h00040000 |
Static control, normally used for text prompts, but also may be used for graphic lines and images. For images, ctext is interpreted as the filespec (either AMOS or native) or a DLL bitmap resource (resname::dllname) ; supported types are BMP, JPG, TIF, PCX, PNG. See example under Add Control. |
MBF_EDIT |
&h00080000 |
Edit control (reserved for INFLD use). See Icon Control. |
MBF_ALTPOS |
&h00100000 |
Adjusts the way in which a control is positioned, with the specific effect varying by the type of control. For buttons (MBF_BUTTON) and group boxes (MBF_GROUPBOX) it causes a slight vertical adjustment (usually an improvement) in the way they are positioned and sized on the screen. See Groupbox + MBF_ALTPOS. For horizontal lines, it moves them from the center of the row to the bottom of the row. For dialogs, it switches the entire dialog (and all its child controls) to the Alternate Dialog Coordinate System. |
MBF_WORDELLIPSIS |
&h00200000 |
For static text controls (MBF_STATIC), if the text in ctext does not fit within the control, an ellipsis (...) will be displayed. |
MBF_PATHELLIPSIS |
&h00400000 |
For static text controls (MBF_STATIC), if the text in ctext does not fit within the control, it is interpreted as a path, and an ellipsis will be used for the middle portion of the path to shrink it to fit. |
MBF_WRAP |
&h00400000 |
Applies to buttons (MBF_BUTTON) only, causing text within them to wrap to multiple lines (assuming the button is tall enough). This is automatic for static controls. |
MBF_NODISTORT |
&h00400000 |
Applies to images (MBF_ICON or MBF_BITMAP) within controls (MBF_STATIC or MBF_BUTTON) only, causing the aspect ratio of the original image to be preserved when scaling it to the size of the control. Otherwise, the image will be stretched to completely fill the control. |
MBF_MODELESS |
&h00400000 |
Mode-less dialog (with MBF_DIALOG). |
MBF_DIM |
&h00800000 |
For static text controls (MBF_STATIC), applies the equivalent of the "dim" attribute. This affects the interpretation of the foreground color (fgc) and also makes the text behave like normal fixed-pitch text with respect to protection and clearing. |
MBF_LISTBOX |
&h01000000 |
List box control. (Reserved for internal use by XTREE) |
MBF_GROUPBOX |
&h02000000 |
Creates a "groupbox", which can be used to group other controls. (Do not set MBF_STATIC!) See Groupbox Control. |
MBF_FRAME |
&h02000000 |
When used with MBF_STATIC, creates a variation of static control that has a "frame" edge, making it stand out from the background (sort of the reverse of the sunken effect.) |
MBF_COMBOBOX |
&h04000000 |
Combo box control (reserved for INFLD use) |
MBF_UNPROTECTED |
&h08000000 |
May be applied to buttons and other controls which are normally protected, to allow them to be cleared by opcode 4. See Clear Control. |
MBF_PROGRESS |
&h10000000 |
Progress bar control. See Progress Bar Control. |
MBF_DIALOG |
&h20000000 |
Dialog box. See Modal Dialog Box |
MBF_TAB |
&h40000000 |
Tab control. See Tab Control, and the MBF2_TABX entry in the ctype2 table. |
Definition file: ashell.def |