模块  java.desktop
软件包  javax.sound.sampled

Class FloatControl


  • public abstract class FloatControl
    extends Control
    FloatControl对象提供对一系列浮点值的控制。 浮动控件通常通过连续可调节的对象(例如滑块或旋钮)在图形用户界面中表示。 FloatControl具体子类实现了控制,例如增益和平移,它们以某种方式影响线路的音频信号,应用程序可以通过它来操作。 FloatControl.Type内部类提供了用于标识某些常见浮点型控件的类型的静态实例。

    FloatControl抽象类提供了设置和获取控件的当前浮点值的方法。 其他方法获得可能的值范围和控件的分辨率(返回值之间的最小增量)。 某些浮动控件允许在指定的时间段内渐变到新值。 FloatControl还包括返回控件的最小,最大和中点位置的字符串标签的方法。

    从以下版本开始:
    1.3
    另请参见:
    Line.getControls()Line.isControlSupported(javax.sound.sampled.Control.Type)
    • 嵌套类汇总

      嵌套类  
      变量和类型 描述
      static class  FloatControl.Type
      FloatControl.Type内部类的实例标识一种浮点控件。
    • 构造方法摘要

      构造方法  
      变量 构造器 描述
      protected FloatControl​(FloatControl.Type type, float minimum, float maximum, float precision, int updatePeriod, float initialValue, String units)
      使用给定参数构造一个新的浮点控件对象。
      protected FloatControl​(FloatControl.Type type, float minimum, float maximum, float precision, int updatePeriod, float initialValue, String units, String minLabel, String midLabel, String maxLabel)
      使用给定参数构造一个新的浮点控件对象。
    • 构造方法详细信息

      • FloatControl

        protected FloatControl​(FloatControl.Type type,
                               float minimum,
                               float maximum,
                               float precision,
                               int updatePeriod,
                               float initialValue,
                               String units,
                               String minLabel,
                               String midLabel,
                               String maxLabel)
        使用给定参数构造一个新的浮点控件对象。
        参数
        type - 此浮动控件对象表示的控件类型
        minimum - 控件允许的最小值
        maximum - 控制允许的最大值
        precision - 控件的分辨率或粒度。 这是离散有效值之间的增量大小。
        updatePeriod - 在 updatePeriod期间控制可以从一个离散值更改为下一个离散值的最小时间间隔(以微秒为 单位)
        initialValue - 控件在构造时开始的值
        units - 表示控件值的单位的标签,例如“dB”或“每秒帧数”
        minLabel - 最小值的标签,例如“Left”或“Off”
        midLabel - 中点值的标签,例如“中心”或“默认”
        maxLabel - 最大值的标签,例如“Right”或“Full”
        异常
        IllegalArgumentException - 如果 minimum大于 maximuminitialValue不在允许范围内
      • FloatControl

        protected FloatControl​(FloatControl.Type type,
                               float minimum,
                               float maximum,
                               float precision,
                               int updatePeriod,
                               float initialValue,
                               String units)
        使用给定参数构造一个新的浮点控件对象。 最小值,最大值和中点值的标签设置为零长度字符串。
        参数
        type - 此浮动控件对象表示的控件类型
        minimum - 控件允许的最小值
        maximum - 控件允许的最大值
        precision - 控件的分辨率或粒度。 这是离散有效值之间的增量大小。
        updatePeriod - updatePeriod期间控件可以从一个离散值更改为下一个离散值的最小时间间隔(以微秒为 单位)
        initialValue - 控件在构造时开始的值
        units - 表示控件值的单位的标签,例如“dB”或“每秒帧数”
        异常
        IllegalArgumentException - 如果 minimum大于 maximuminitialValue不在允许范围内
    • 方法详细信息

      • setValue

        public void setValue​(float newValue)
        设置控件的当前值。 默认实现只是按指示设置值。 如果指示的值大于最大值,或小于最小值,则抛出IllegalArgumentException 某些控件要求在通过设置值来影响它们之前打开它们的线。
        参数
        newValue - 期望的新价值
        异常
        IllegalArgumentException - 如果指示的值不在允许范围内
      • getValue

        public float getValue()
        获得此控件的当前值。
        结果
        当前的价值
      • getMaximum

        public float getMaximum()
        获得允许的最大值。
        结果
        最大允许值
      • getMinimum

        public float getMinimum()
        获得允许的最小值。
        结果
        最低允许值
      • getUnits

        public String getUnits()
        获得表示控件值的单位的标签,例如“dB”或“每秒帧数”。
        结果
        单位标签,如果没有标签,则为零长度字符串
      • getMinLabel

        public String getMinLabel()
        获得最小值的标签,例如“Left”或“Off”。
        结果
        最小值标签,如果没有设置标签,则为零长度字符串
      • getMidLabel

        public String getMidLabel()
        获得中点值的标签,例如“中心”或“默认”。
        结果
        中点值标签,如果没有设置标签,则为零长度字符串
      • getMaxLabel

        public String getMaxLabel()
        获得最大值的标签,例如“Right”或“Full”。
        结果
        最大值标签,如果未设置标签,则为零长度字符串
      • getPrecision

        public float getPrecision()
        以控件测量的单位获得控件的分辨率或粒度。 精度是此控件的离散有效值与支持的浮点值集之间的增量大小。
        结果
        控制的精确度
      • getUpdatePeriod

        public int getUpdatePeriod()
        获得控制值在移位期间可以改变的最小时间间隔(以微秒为单位)。 更新周期是控制在移位期间更新其值的频率的倒数。 如果实现不支持随时间的值移位,则应立即将控件的值设置为最终值,并从此方法返回-1。
        结果
        更新周期(以微秒为单位),如果不支持随时间变化,则为-1
        另请参见:
        shift(float, float, int)
      • shift

        public void shift​(float from,
                          float to,
                          int microseconds)
        在指定的时间段内将控制值从初始值线性更改为最终值,以微秒为单位。 此方法无阻塞地返回; 它不等待转变完成。 实现应在指定的时间内完成操作。 默认实现只是立即将值更改为最终值。
        参数
        from - 班次开始时的初始值
        to - 班次后的最终价值
        microseconds - 移位的最大持续时间(以微秒为单位)
        异常
        IllegalArgumentException - 如果 fromto值不在允许范围内
        另请参见:
        getUpdatePeriod()
      • toString

        public String toString()
        提供控件的字符串表示形式。
        重写:
        toString在类 Control
        结果
        字符串描述