📜  如何在 c# windows 窗体上一次播放多个声音 - C# (1)

📅  最后修改于: 2023-12-03 15:38:13.423000             🧑  作者: Mango

如何在 C# Windows 窗体上一次播放多个声音 - C#

在 C# 中,我们可以通过 SoundPlayer 类来播放声音文件。但是,如果需要播放多个声音文件,我们需要将它们分别加载到多个 SoundPlayer 对象中,并分别播放它们。本文将介绍如何在 C# Windows 窗体上一次播放多个声音。

第一步:引用命名空间和库

在窗体的代码文件中,我们需要引用 System.Media 命名空间和 System.IO 命名空间。代码如下:

using System.Media;
using System.IO;
第二步:加载声音文件并创建 SoundPlayer 对象

我们可以先将所有需要播放的声音文件的路径存储在一个字符串数组中。然后,我们循环遍历该数组,逐一加载声音文件到对应的 SoundPlayer 对象中,并将该对象添加到一个 List 列表中。代码如下:

List<SoundPlayer> players = new List<SoundPlayer>();
string[] soundPaths = new string[] { "sound1.wav", "sound2.wav", "sound3.wav" };

foreach(string soundPath in soundPaths)
{
    SoundPlayer player = new SoundPlayer(soundPath);
    players.Add(player);
}
第三步:播放声音

当需要播放所有声音文件时,我们可以通过循环遍历 SoundPlayer 对象列表并分别播放它们。代码如下:

foreach(SoundPlayer player in players)
{
    player.Play();
}
完整代码示例
using System;
using System.Windows.Forms;
using System.Media;
using System.IO;
using System.Collections.Generic;

namespace MultipleSoundPlayer
{
    public partial class Form1 : Form
    {
        List<SoundPlayer> players = new List<SoundPlayer>();
        string[] soundPaths = new string[] { "sound1.wav", "sound2.wav", "sound3.wav" };

        public Form1()
        {
            InitializeComponent();

            foreach (string soundPath in soundPaths)
            {
                SoundPlayer player = new SoundPlayer(soundPath);
                players.Add(player);
            }
        }

        private void button1_Click(object sender, EventArgs e)
        {
            foreach(SoundPlayer player in players)
            {
                player.Play();
            }
        }
    }
}

以上就是在 C# Windows 窗体上一次播放多个声音的方法。