Module  java.desktop
软件包  javax.sound.sampled

Class LineEvent

  • All Implemented Interfaces:
    Serializable


    public class LineEvent
    extends EventObject
    LineEvent类封装了线路在打开,关闭,启动或停止时发送监听器的信息。 这四个状态变化中的每一个都由对应的事件类型表示。 监听器接收该事件作为其update方法的参数。 通过查询事件,侦听器可以了解事件的类型,负责事件的行以及事件发生时线路处理的数据量。

    虽然这个类实现了Serializable,但尝试序列化一个LineEvent对象将失败。

    从以下版本开始:
    1.3
    另请参见:
    LineLineListener.update(javax.sound.sampled.LineEvent)
    • 构造方法详细信息

      • LineEvent

        public LineEvent​(Line line,
                         LineEvent.Type type,
                         long position)
        构造指定类型的新事件,源自指定的行。
        参数
        line - 这个事件的来源
        type -事件类型( OPENCLOSESTART ,或 STOP
        position - 发生事件时行已经处理的样本帧数,或 AudioSystem.NOT_SPECIFIED
        异常
        IllegalArgumentException - 如果 linenull
    • 方法详细信息

      • getLine

        public final Line getLine​()
        获取作为此事件的来源的音频线。
        结果
        负责此事的一线
      • getFramePosition

        public final long getFramePosition​()
        当事件发生时,获取该行的音频数据中的位置,以采样帧表示。 例如,如果源线在暂停时已经播放了14个样本帧,则暂停事件将将线的位置报告为14.要处理的下一帧将是使用基于零的编号的帧号14,或15使用一个编号。

        请注意,此字段仅与由数据行生成的某些事件相关,例如STARTSTOP 对于不计算采样帧的行生成的事件,以及对于此值不知道的任何其他事件,位置值应为AudioSystem.NOT_SPECIFIED

        结果
        该行的位置作为示例帧号
      • toString

        public String toString​()
        获取事件的字符串表示形式。 字符串的内容可能因Java Sound的实现而异。
        重写:
        toStringEventObject
        结果
        描述事件的字符串