GUI design: disabling labels?
I couldn't find anything useful on the net to this question:
Is it generally a good idea to disable labels on GUIs (forms etc.) or is it considered a b开发者_如何学Clooper?
I'm not talking about HTML specifically, just any desktop GUI toolkit.
The question is, a label is usually put in front of another GUI element, like a textfield, dropdown box, radio button/s etc. When these input components are being disabled dynamically, that is upon the state of other GUI elements, is it a good idea to also disable its label, even though it provides no means for input itself?
Generally, you should disable (gray out) the label as well as the control. This applies to checkboxes, radio buttons, spin boxes, drop-down menus, etc. This is common practice in Windows and Mac OS.
If you have your controls arranged hierarchically, as you would commonly see in a Settings/Preferences dialog, you should disable all subordinate controls when you disable or deselect a parent control.
An important additional point is that you should also make sure it is obvious to the user why an item is disabled. Sometimes, in cases where it's not obvious, it is preferable to allow users to click on non-available controls--rather than disable the controls--then use a dialog or some other method to explain why the control is unavailable.
From a programming point of view, you may want to put your control and label into a common container, then disable the container and allow the "enabled" property to cascade downward to the label and control. Most modern frameworks work this way (e.g., WPF, Flex, HTML).
精彩评论