This was inspired by the discussion in https://backdrop.zulipchat.com/#narrow/stream/218635-Backdrop/topic/.24f...
Consider this form element:
$form['my_checkboxes'] = array(
'#type' => 'checkboxes',
'#title' => t('my Checkboxes'),
'#options' => array(
1 => 'one',
2 => 'two',
3 => 'three',
4 => 'four',
),
'#description' => t('This is the description for the entire set of checkboxes'),
'#default_value' => array(1, 3),
);
One can set descriptions for each individual checkbox, and also disable only one/some of these checkboxes:
$form['my_checkboxes'][1]['#description'] = t('This is the description for the 1st checkbox');
$form['my_checkboxes'][3]['#description'] = t('This is the description for the 3rd checkbox');
$form['my_checkboxes'][2]['#disabled'] = TRUE;
The above would result in this:

Although individual descriptions do not make sense for select elements, there are perfectly valid cases where you need to: - make sure that one/some of the options are disabled/locked (user cannot select them, but they are still shown) - make sure that one/some of the options are selected + at the same time disabled/locked (so that you can force one or more options that must be selected in addition to those that the user can select).
However, if you consider this select element:
$form['my_select'] = array(
'#type' => 'select',
'#title' => t('my Select'),
'#options' => array(
1 => 'one',
2 => 'two',
3 => 'three',
4 => 'four',
),
'#default_value' => array(1, 3),
);
...or this multi-select element:
$form['my_select'] = array(
'#type' => 'select',
'#multiple' => TRUE,
'#title' => t('my multi-Select'),
'#options' => array(
'group1' => array(
1 => 'one',
2 => 'two',
),
'group2' => array(
3 => 'three',
4 => 'four',
),
),
'#default_value' => array(1, 3),
);
Then this has absolutely no effect:
$form['my_select'][2]['#disabled'] = TRUE;
Recent comments
well @herb I cannot believe it, but the webform module was there in modules on the disc, but missing in the listed modules, so I delete the module folder, and downloaded it again. Then...
My Webform Worksheets have disappeared
The only thing I can think of is to make sure Webform module is enabled and that the content type that needs to contain the webforms has Webform enabled for it. Edit the content type and make...
My Webform Worksheets have disappeared
@yorkshirepudding, In the end I fixed it by deleting the config/active folder contents, copying the config/staging/ files into config/active, importing the database again and clearing the caches...
Importing the staged config throws an error: another field with the same name already exists