represents a setter bar with setting x and with setter buttons for values vali.


takes the setting to be the dynamically updated current value of x, with the value of x being reset every time a setter button is clicked.


represents a setter bar in which the setter button giving value vali has label lbli.

Details and Options

  • The vali and lbli can be strings, boxes, graphics, or any other expressions, including dynamic expressions. »
  • The following options can be given:
  • Appearance Automaticthe overall appearance of the setter bar
    BaselinePosition Automaticalignment relative to surrounding text
    BaseStyle{}base style specifications for the setter bar
    Enabled Automaticwhether the setter bar is enabled, or grayed out
  • Possible settings for the Appearance option include:
  • "Horizontal"equally spaced horizontally
    "Vertical"equally spaced vertically
    "Row"laid out like text, allowing linewrapping
  • Appearance->"Vertical"->{h,w} will display the controls in a grid with the specified number of columns and rows, vertically filling each column in turn. Appearance->"Horizontal"->{h,w} horizontally fills the rows instead.
  • If one of h or w is Automatic, it is taken to be the smallest number so that all the controls will fit in the resulting grid. If both h and w are Automatic, they are calculated so the grid has roughly the same number of rows as columns.
  • The settings for BaseStyle are appended to the default style typically given by the "SetterBar" style in the current stylesheet.


open allclose all

Basic Examples  (2)

Use five possible settings:

Dynamically change the value of :

Scope  (2)

Include labels:

Values and labels can be any expression:

Options  (6)

Appearance  (3)

Change the orientation of SetterBar:

The Appearance option "Row" allows line wrapping, while "Horizontal" does not:

Specify a three-column layout, with elements ordered vertically:

Background  (1)

Change the background color:

BaselinePosition  (1)

Align with the surrounding text:

Enabled  (1)

By default, SetterBar is enabled:

By setting Enabled->False, the setter bar is disabled but visible in its current state:

Applications  (1)

Alter the frequency:

Properties & Relations  (1)

RadioButtonBar is a special case of SetterBar:

Wolfram Research (2007), SetterBar, Wolfram Language function,


Wolfram Research (2007), SetterBar, Wolfram Language function,


Wolfram Language. 2007. "SetterBar." Wolfram Language & System Documentation Center. Wolfram Research.


Wolfram Language. (2007). SetterBar. Wolfram Language & System Documentation Center. Retrieved from


@misc{reference.wolfram_2024_setterbar, author="Wolfram Research", title="{SetterBar}", year="2007", howpublished="\url{}", note=[Accessed: 21-June-2024 ]}


@online{reference.wolfram_2024_setterbar, organization={Wolfram Research}, title={SetterBar}, year={2007}, url={}, note=[Accessed: 21-June-2024 ]}