- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在Java中,我需要检查音频剪辑是否正在运行,但是当我尝试类似的操作时:
if(clip1.isRunning()){
}
import java.applet.Applet;
import java.applet.AudioClip;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.util.Random;
import javax.sound.sampled.Clip;
import javax.swing.Timer;
AudioClip clip1;
public void mousePressed(MouseEvent me) {
if (xPos > 0 && xPos < 0+64 && yPos >0 &&
yPos < 0+64){
if(soundMuted == false){
soundMuted = true;
clip1.stop();
}
else{
if (clip1.isRunning()){
}
else{
soundMuted = false;
clip1.play();
}
}
}
}
Description Resource Path Location Type
The method isRunning() is undefined for the type AudioClip HomeScreen.java
/AlexVega2/src line 421 Java Problem
最佳答案
java.applet.AudioClip
不会从继承自javax.sound.sampled.Clip
的任何类扩展,因此它没有isRunning
方法
要使用javax.sound.sampled.Clip
,您必须使用Sound API,用于example和example
该示例的音频剪辑应嵌入在Jar文件中(此示例将它们包含在sounds
包中,但是您可以更改为所需的任何位置)
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.IOException;
import java.io.InputStream;
import javax.sound.sampled.AudioInputStream;
import javax.sound.sampled.AudioSystem;
import javax.sound.sampled.Clip;
import javax.sound.sampled.LineEvent;
import javax.sound.sampled.LineListener;
import javax.sound.sampled.LineUnavailableException;
import javax.sound.sampled.UnsupportedAudioFileException;
import javax.swing.JApplet;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.Timer;
public class Test extends JApplet {
private Clip clip;
private JButton btnPlay;
private JLabel label;
@Override
public void init() {
super.init();
}
@Override
public void start() {
super.start();
setLayout(new GridBagLayout());
GridBagConstraints gbc = new GridBagConstraints();
gbc.gridwidth = GridBagConstraints.REMAINDER;
btnPlay = new JButton("Bring the noise");
label = new JLabel("___");
add(btnPlay, gbc);
add(label, gbc);
btnPlay.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
play();
}
});
Timer timer = new Timer(250, new ActionListener() {
private int counter = 0;
@Override
public void actionPerformed(ActionEvent e) {
if (clip == null || !clip.isRunning()) {
label.setText("___");
} else {
StringBuilder sb = new StringBuilder(" ");
for (int index = 0; index < counter; index++) {
sb.setCharAt(index, '.');
}
label.setText(sb.toString());
counter++;
if (counter > 10) {
counter = 0;
}
}
}
});
timer.setInitialDelay(0);
timer.start();
}
protected void play() {
try (InputStream is = getClass().getResourceAsStream("/sounds/Maid with the Flaxen Hair.wav")) {
try (AudioInputStream audioInputStream = AudioSystem.getAudioInputStream(is)) {
clip = AudioSystem.getClip();
clip.addLineListener(new LineListener() {
@Override
public void update(LineEvent event) {
System.out.println(event.getFramePosition());
if (event.getType().equals(LineEvent.Type.STOP)) {
btnPlay.setEnabled(true);
}
}
});
clip.open(audioInputStream);
clip.start();
btnPlay.setEnabled(false);
} catch (UnsupportedAudioFileException | LineUnavailableException ex) {
ex.printStackTrace();
}
} catch (IOException exp) {
exp.printStackTrace();
}
}
@Override
public void stop() {
super.stop();
if (clip != null) {
clip.stop();
}
}
}
JLabel
,它将用一系列动画
.
,当不再播放时,它将只是
___
空行
关于java - 简单的: Java how to use “isRunning” on an audio clip?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30449573/
我正在尝试为游戏制作背景音乐。由于某种原因,歌曲第一次播放后就不会再播放了。我做错了什么以及如何解决它?我知道我可以使用 .loop() 但我希望它永远重复,并且 .loop() 最终会停止。 pu
我正在创建一个正在创建门(AND、OR 等)的程序,但是当我想创建一个 SR 锁存器时,我需要使用一个计时器。 因此,当调用此方法 (inputChanged) 时,它应该检查计时器是否正在运行。如果
这是我第一次来这个论坛。我的 java 计时器有问题。我的程序在不同时间显示图像。这是我的代码 //TIMER //creo timer per il tempo di visualizzaz
OSStatus err = AudioQueueNewOutput(&audioDescription, AudioPlayerAQOutputCallback, ( void* )self, ni
我遇到了一个奇怪的行为。如果我使用 start() 启动 AnimationDrawable,那么在动画完成后,方法 isRunning() 仍将返回 true。它是“一次性”动画,不循环播放。 这是
我使用以下代码启动嵌入式 Jetty: Server server = new Server(8080); MBeanContainer mbContainer = new MBeanContaine
我正在使用 AVCaptureSession 捕捉视频,在 iOS 6.1 上一切正常。但是,我一直在尝试从另一个线程检查我的捕获 session 是否正在通过 isRunning 方法运行。但是,无
本文整理了Java中org.apache.zookeeper.server.ZooKeeperServer.isRunning()方法的一些代码示例,展示了ZooKeeperServer.isRunn
本文整理了Java中org.apache.twill.zookeeper.ZKClientService.isRunning()方法的一些代码示例,展示了ZKClientService.isRunni
在Java中,我需要检查音频剪辑是否正在运行,但是当我尝试类似的操作时: if(clip1.isRunning()){ } Eclipse给了我以下错误: “类型AudioClip的isRunning
DataLine 中的 isRunning() 和 isActibe() 有什么区别?当线路实际处理数据时,这两个标志似乎都已设置。 更新 那里有两对方法: 1) 打开/关闭 2) 启动/停止 还有三
我正在我的 PI 上测试一个程序。在主机 pc 上运行它时没有显示错误,相反,在 pi (CM3) 上运行它会卡住。 我正在尝试使用多线程。 从主线程开始,在构造函数中启动了一个 QThread,然后
本文整理了Java中org.apache.hadoop.hbase.procedure2.store.wal.WALProcedureStore.isRunning()方法的一些代码示例,展示了WAL
我有一个简单的 SKAudioNode: 让 backgroundSound = SKAudioNode(fileNamed: "backgroundSound.mp3") 我用播放 backgrou
下面是我的 qthread 实现的代码。我正在尝试从卫星获取 gps 数据。即使程序退出 gpsSearch() 槽函数,QThread 也不会产生 finished() 信号。每当单击按钮时,都会调
我是一名优秀的程序员,十分优秀!