BooleanControl (Java Platform SE 8 )
Keywords: javax.sound.sampled.BooleanControl class
Date: 2026-03-16

javax.sound.sampled

## Class BooleanControl

- java.lang.Object
- - javax.sound.sampled.Control
  - - javax.sound.sampled.BooleanControl

-     public abstract class BooleanControl
      extends Control

  A `BooleanControl` provides the ability to switch between two possible settings that affect a line's audio. The settings are boolean values (`true` and `false`). A graphical user interface might represent the control by a two-state button, an on/off switch, two mutually exclusive buttons, or a checkbox (among other possibilities). For example, depressing a button might activate a ``MUTE`` control to silence the line's audio.

  As with other ``Control`` subclasses, a method is provided that returns string labels for the values, suitable for display in the user interface.

  Since:
    1.3

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `BooleanControl.Type` An instance of the `BooleanControl.Type` class identifies one kind of boolean control.

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `BooleanControl(BooleanControl.Type type, boolean initialValue)` Constructs a new boolean control object with the given parameters.
    `protected` | `BooleanControl(BooleanControl.Type type, boolean initialValue, String trueStateLabel, String falseStateLabel)` Constructs a new boolean control object with the given parameters.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `String` | `getStateLabel(boolean state)` Obtains the label for the specified state.
    `boolean` | `getValue()` Obtains this control's current value.
    `void` | `setValue(boolean value)` Sets the current value for the control.
    `String` | `toString()` Provides a string representation of the control

    - ### Methods inherited from class javax.sound.sampled.Control

      `getType`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### BooleanControl

          protected BooleanControl(BooleanControl.Type type,
                                   boolean initialValue,
                                   String trueStateLabel,
                                   String falseStateLabel)

      Constructs a new boolean control object with the given parameters.
      Parameters:
        `type` - the type of control represented this float control object
        `initialValue` - the initial control value
        `trueStateLabel` - the label for the state represented by `true`, such as "true" or "on."
        `falseStateLabel` - the label for the state represented by `false`, such as "false" or "off."

    - #### BooleanControl

          protected BooleanControl(BooleanControl.Type type,
                                   boolean initialValue)

      Constructs a new boolean control object with the given parameters. The labels for the `true` and `false` states default to "true" and "false."
      Parameters:
        `type` - the type of control represented by this float control object
        `initialValue` - the initial control value

  - ### Method Detail

    - #### setValue

          public void setValue(boolean value)

      Sets the current value for the control. The default implementation simply sets the value as indicated. Some controls require that their line be open before they can be affected by setting a value.
      Parameters:
        `value` - desired new value.

    - #### getValue

          public boolean getValue()

      Obtains this control's current value.
      Returns:
        current value.

    - #### getStateLabel

          public String getStateLabel(boolean state)

      Obtains the label for the specified state.
      Parameters:
        `state` - the state whose label will be returned
      Returns:
        the label for the specified state, such as "true" or "on" for `true`, or "false" or "off" for `false`.

    - #### toString

          public String toString()

      Provides a string representation of the control
      Overrides:
        `toString` in class `Control`
      Returns:
        a string description

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2026, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.