Projects/Usability/HIG/RadioButtons: Difference between revisions

From KDE TechBase
< Projects‎ | Usability‎ | HIG
Line 8: Line 8:


== Guidelines ==
== Guidelines ==
=== Is this the right control ===
* Use radio buttons for a few mutually exclusive options. If there are more than five options (or if there is not enough space to arrange four or five options), use a [[Projects/Usability/HIG/Combo_Box| combo box]] or list instead.
* Use radio buttons for a few mutually exclusive options. If there are more than five options (or if there is not enough space to arrange four or five options), use a [[Projects/Usability/HIG/Combo_Box| combo box]] or list instead.
* If there are only two options where one is the negation of the other (e.g. "apply" vs. "do not apply"), consider replacing the radio buttons by one [[Projects/Usability/HIG/Check_Box| check box]].
* If there are only two options where one is the negation of the other (e.g. "apply" vs. "do not apply"), consider replacing the radio buttons by one [[Projects/Usability/HIG/Check_Box| check box]].
* Use radio buttons if the user should see the choices without further interaction.
* Use radio buttons if the user should see the choices without further interaction.
=== Behavior ===
* Radio buttons are not dynamic; their content or labels should not change depending on the context.
* If toggling a radio button affects the enabled state of other controls, place the controls that it affects next to the radio button or below and indented.
* Do not initiate an action when the user clicks a radio button.
* Always have one radio button selected.
* Make the first item the default option.
=== Appearance ===
* Provide a descriptive label above or left to a group of radio buttons in [[Projects/Usability/HIG/Capitalization#Sentence_Style_Capitalization|sentence style capitalization]].
* Provide a descriptive label above or left to a group of radio buttons in [[Projects/Usability/HIG/Capitalization#Sentence_Style_Capitalization|sentence style capitalization]].
* Use [[Projects/Usability/HIG/Capitalization#Title_Capitalization|title style capitalization]] for the radio button options.
* Use [[Projects/Usability/HIG/Capitalization#Title_Capitalization|title style capitalization]] for the radio button options.
* Align groups of radio buttons vertically rather than horizontally, as this makes them easier to scan visually.
* Align groups of radio buttons vertically rather than horizontally, as this makes them easier to scan visually.
* Radio buttons are not dynamic; their content or labels should not change depending on the context.
* If toggling a radio button affects the enabled state of other controls, place the controls that it affects next to the radio button or below and indented.
* Do not initiate an action when the user clicks a radio button.
* When using a radio button and none of the options is a valid choice, add another option to reflect this choice, such as None or Does not apply.
* When using a radio button and none of the options is a valid choice, add another option to reflect this choice, such as None or Does not apply.
* Always have one radio button selected; make the first item the default option.


== Implementation ==
== Implementation ==
* [http://qt-project.org/doc/qt-4.8/qradiobutton.html QRadioButton]
* [http://qt-project.org/doc/qt-4.8/qradiobutton.html QRadioButton]
* [http://qt-project.org/doc/qt-4.8/qbuttongroup.html QButtonGroup]
* [http://qt-project.org/doc/qt-4.8/qbuttongroup.html QButtonGroup]

Revision as of 13:02, 16 July 2013


Purpose

Radio buttons offer the user a choice of two or more mutually exclusive options. Try to limit the number of radio buttons and radio button groups in a dialog. Offering a high number of radio buttons consumes screen space and adds to visual clutter. At the same time, showing all available options at once is an advantage if users are likely not to know possible alternatives.

Examples

Guidelines

Is this the right control

  • Use radio buttons for a few mutually exclusive options. If there are more than five options (or if there is not enough space to arrange four or five options), use a combo box or list instead.
  • If there are only two options where one is the negation of the other (e.g. "apply" vs. "do not apply"), consider replacing the radio buttons by one check box.
  • Use radio buttons if the user should see the choices without further interaction.

Behavior

  • Radio buttons are not dynamic; their content or labels should not change depending on the context.
  • If toggling a radio button affects the enabled state of other controls, place the controls that it affects next to the radio button or below and indented.
  • Do not initiate an action when the user clicks a radio button.
  • Always have one radio button selected.
  • Make the first item the default option.

Appearance

  • Provide a descriptive label above or left to a group of radio buttons in sentence style capitalization.
  • Use title style capitalization for the radio button options.
  • Align groups of radio buttons vertically rather than horizontally, as this makes them easier to scan visually.
  • When using a radio button and none of the options is a valid choice, add another option to reflect this choice, such as None or Does not apply.

Implementation