目前,我有我的事件處理這裏的時候,一個聲音:JavaFX的:播放過的東西被點擊
theScene.setOnMouseClicked(
new EventHandler<MouseEvent>() {
public void handle(MouseEvent e) {
if (targetData.containsPoint(e.getX(), e.getY())) {
double x = 50 + 400 * Math.random();
double y = 50 + 400 * Math.random();
targetData.setCenter(x, y);
mediaPlayer.play(); //play hitsound
points.value++; //add points
} else {
points.value = 0; //miss
}
}
});
我也有我的音頻設置,如下所示:
String hitNormal = ("hit.mp3");
Media sound = new Media(new File(hitNormal).toURI().toString());
MediaPlayer mediaPlayer = new MediaPlayer(sound);
當我運行我的程序,只圓上的第一次點擊播放hitsound,但後面的所有圓圈都不播放聲音。我認爲我上面應該工作,因爲每次我點擊額外的圈子總是會增加分數。因爲我有我的mediaPlayer.play();在與添加分數的線條完全相同的陳述中,我預計聲音也會發揮。每當我點擊圈子時,我該如何讓自己的屁股發揮作用?
編輯:我添加mediaPlayer.stop();在points.value ++之下,它似乎偶爾發揮hitsound,但並非總是如此。
您是否嘗試過使用'mediaPlayer.pause()'呢? – Flaom
我不覺得孤單,需要暫停1秒的音頻剪輯。 你能解釋更多,我可以使用mediaPlayer.pause(); ? – Enkrypton
不好意思,我誤解了這個方法。 – Flaom