2016-04-11 19 views
1

処理に音楽を追加する方法を学びましたが、今度は一度クリックすると曲を再生し、2回クリックすると一時停止します。mousePressedをクリックして1回再生し、2回クリックすると停止する方法は?

私は一度クリックするとmousePressedを使用して曲を再生できることを理解していますが、ifを使用すると一時停止できません。

import ddf.minim.analysis.*; 
import ddf.minim.effects.*; 
import ddf.minim.signals.*; 
import ddf.minim.spi.*; 
import ddf.minim.ugens.*; 

Minim minim; 
AudioPlayer player; 
Boolean value = true; 

void setup() { 
    minim = new Minim(this); 
    player = minim.loadFile("deadmau5.mp3"); 
} 

void draw() { } 

void mousePressed() { 
    player.pause(); 
} 

//void mouseReleased() 
//{ 
// player.pause(); 
// player.rewind(); 
//} 

void mouseClicked() { 
    if (value == false){ 
    player.play(); 
    } 
    if (mousePressed == '2') {  
     value = false;  
     player.pause(); 
    } 
} 

ブール値を追加しようとしましたが、どちらも機能しませんでした。誰でも私ができることについて何か考えがありましたか?

答えて

1

ちょうどあなたがにいるその状態を追跡するためにブール値を使用しています。実際に

boolean playing = false; 

void mousePressed(){ 
    playing = !playing; 

    if(playing){ 
     //play your song 
    } 
    else{ 
     //pause your song 
    } 
} 

ミニムはすでにあなたのためにこれを把握してブール値を持っていた場合、私は驚かないだろう。 player.isPlaying()などのようなものです。ドキュメントをチェックしたいかもしれません。

+0

didnt work good sir。プレイヤーと遊んでリンクするにはどうしたらいいですか? –

+0

@ user3318928あなたはそれがうまくいかないと言ったとき、正確に何を意味しますか?試したコードを投稿できますか?単に 'playing'を使って' player.play() 'か' player.pause() 'を呼び出すかどうかを判断することによって、' playing'を 'player'とリンクします。 –

+0

@ user3318928 'mousePressed()'関数の最初の行に注目しましょう: 'playing =!playing;'これは 'boolean'の値を切り替えるものです。 –

関連する問題