Buttons

Segmented button

Present a small set of related, mutually comparable options in one connected control — pick one, or toggle several.

Playground

Configure the group and copy synchronized Vue markup.

Interactive preview

Changes are reflected in the example and source.

Properties

Color

Multiple

Disabled

Vue

<m-button-segmented
  v-model="period"
  :items="periods"
  color="secondary"
/>

Token map

Container, segment, and selected-scheme tokens with their component-to-system dependencies.

MButtonSegmented · All52 tokens
md-segmented-button

MButtonSegmented API

Props, slots, and events are hydrated from the generated public manifest.

MButtonSegmented

Button family
src/runtime/components/ui/button/segmented

Props

NameTypeDefault
colorSemantic Material color role used by the component scheme.
'primary' | 'secondary' | 'tertiary' | 'error''secondary'
disabledPrevents interaction and applies the disabled visual state.
booleanfalse
loadingReplaces content with progress feedback and prevents interaction.
booleanfalse
itemsSegments displayed by the single- or multi-select group.
MSegmentedItem[]() => []
modelValueCurrently selected segment value or values.
string | number | (string | number)[]undefined
multipleEnables selecting more than one segment.
booleanfalse

Slots

Events

@update:modelValueMSegmentedModelValue