0

ボタンを押すと音がループし、同じボタンをもう一度押すと音が止まろうとしています。同時に再生されている(すべてがループしている)複数のサウンドがあります。すべてのサウンドは、任意の順序で開始および停止できる必要があります。

私の問題?

1つのボタンを押すと、サウンドは正常にループし、ボタンをもう一度押すと停止しますが、1つのボタンを押してから(1つのサウンドがループしている)、別のボタンを押すと(両方のサウンドを同時に再生するため)それから最初の音が止まります、そして私は私の人生のためになぜ理解することができませんか?

私のコード:

    private void button3_Click(object sender, RoutedEventArgs e)
    {


        SoundEffect sound3;
        int x = 0;

        StreamResourceInfo SoundFileInfo = App.GetResourceStream(new Uri("tracks/drum (human).wav", UriKind.Relative));

        sound3 = SoundEffect.FromStream(SoundFileInfo.Stream);

        SoundEffectInstance sound3instance = sound3.CreateInstance();


        if (button3.Content.Equals("Sound 3"))
        {
            sound3instance.IsLooped = true;
            sound3instance.Play();
            button3.Content = "Playing";
        }
        else
        {
            sound3instance.Pause();
            button3.Content = "Sound 3";
        }

    }

    private void button4_Click(object sender, RoutedEventArgs e)
    {
        SoundEffect sound4;

        StreamResourceInfo SoundFileInfo2 = App.GetResourceStream(new Uri("Cow Moo 1.wav", UriKind.Relative));

        sound4 = SoundEffect.FromStream(SoundFileInfo2.Stream);

        SoundEffectInstance sound4instance = sound4.CreateInstance();


        if (button4.Content.Equals("Sound 4"))
        {
            sound4instance.IsLooped = true;
            sound4instance.Play();
            button4.Content = "PLaying";
        }
        else
        {
            sound4instance.Pause();
            button4.Content = "Sound 4";
        }
    }

どうもありがとう、

ジェイク

4

1 に答える 1

0

sound3instance と sound4instance はメソッドの外に保存されていますか?

于 2012-06-03T01:08:02.070 に答える