4.1.3 音を鳴らす、止める
複雑な前置きが続きました(汗)が、これでやっと音を出す準備ができました。今度は、音を鳴らす方法と止める方法、それと音が鳴っているかを調べる方法です。
音を鳴らす
音を鳴らす場合は、サウンドバッファオブジェクトのPlayメソッドを実行します。Playメソッドには1回だけ鳴らす(DSBPLAY_DEFAULT)か、繰り返し鳴らす(DSBPLAY_LOOPINGを指定します。なお、この記述はDirectX7と8で同じです。

サウンドバッファオブジェクトを複数準備しておけば、複数の音を同時に鳴らすことも可能です。

'1回だけ鳴らすとき
objDrSB.Play DSBPLAY_DEFAULT

'繰り返し鳴らすとき
objDrSB.Play DSBPLAY_LOOPING
音を止める
DirectXで音を鳴らす場合、プログラムが終了するとたとえ繰り返し指定をしていてもプログラムが終了した時点で音が止まります。意図的に音を止めたいときは、サウンドバッファオブジェクトのStopメソッドを使います。

objDrSB.Stop
音が鳴っているか調べる方法
音が鳴っているかはサウンドバッファオブジェクトのGetStatusプロパティで参照できます。このプロパティが0なら止まっている、0以外なら鳴っている、です。
Copyright(C) 1999-2011 結城圭介。 All rights reserved