Radio buttons are not treated as individual controls, but they are part of a radio button group that functions as a RadioButtonGroup control. The RadioButton table lists the buttons for all the groups.
The RadioButton table has the following columns.
A named property to be tied to this radio button. All the buttons tied to the same property become part of the same group.
A positive integer used to determine the ordering of the items within one list. The integers do not have to be consecutive.
The value string associated with this button. Selecting the button sets the associated property to this value.
The horizontal coordinate within the group of the upper-left corner of the bounding rectangle of the radio button. This must be a non-negative number.
The vertical coordinate within the group of the upper-left corner of the bounding rectangle of the radio button. This must be a non-negative number.
The width of the button. This must be a non-negative number.
The height of the button. This must be a non-negative number.
The localizable, visible title to be assigned to the radio button. If the text is too long to be fit on the control, then it is truncated. If the button displays an icon or a bitmap, then this column contains the name of the picture, which is a key into the Binary table. There is no way to show both a picture and text on a button.
The Help strings used with the button. The text is optional and is localizable. The string is divided into two parts separated by a character (|). The first part of the string is used as ToolTip text. This text is shown by screen readers for controls that contain a picture. The second part is used for context-sensitive Help, although context-sensitive help has not yet been implemented. The separator character is required even if only one of the two kinds of text is present.
The integer values for x, y, width, and height are in the installer units, not dialog units. An installer unit is equal to one-twelfth the height of the 10-point MS Sans Serif font size. Coordinates for the controls are relative to the billboard.
The coordinates of the buttons are given relative to the group. If the coordinates of the group are changed, then the buttons within the group remain in the same relative position to each other.
The contents of the Value and Text fields are formatted by the MsiFormatRecord function when the control is created, therefore they can contain any expression that the MsiFormatRecord function can interpret. The formatting occurs only when the control is created, and it is not updated if a property involved in the expression is modified during the life of the control.
Every RadioButtonGroup control is associated with a property. The default value for this property must be initialized in the Property table. Within each RadioButtonGroup specified in the RadioButton table, there may be one radio button that has a value in the Value field that matches the default value for this property. This is the default button for the RadioButtonGroup control. The default button is initially shown as selected in the control.
Note that the user cannot change focus in a dialog box by pressing the TAB key to a RadioButtonGroup Control until one of the buttons in the group has been selected. To make the focus move to this button group by pressing the TAB key, specify one of the buttons as a default button for the group.