建立第一个directX程序 | ||||
| ||||
using System;
using System.Windows.Forms; using Microsoft.DirectX; using Microsoft.DirectX.DirectSound; namespace PlayWavFu { public partial class FormP : Form { public FormP() { InitializeComponent(); } private void FormP_Load(object sender, EventArgs e) { // 建立声音设备 Device dv = new Device(); //因为Windows是多任务的系统,设备不是独占的,所以在使用设备前要为这个设备设置CooperativeLevel。 //调用Device的SetCooperativeLevel方法:其中,第一个参数是一个Control;第二个参数是个枚举类型,用来设置优先级的。 dv.SetCooperativeLevel(this, CooperativeLevel.Priority); // 为声音建立二级缓冲区 SecondaryBuffer SB = new SecondaryBuffer(@"../../snd.wav", dv); // 播放声音 SB.Play(0, BufferPlayFlags.Looping); Console.ReadLine(); } //这里需要注意播放声音的路径,一开始初学者容易把wav声音放到项目里面, //在SecondaryBuffer里面直接写“NewDrums.wav”,调试是会显示“应用程序错误”。 //因为调试的默认文件夹是Debug,需要的声音文件应该放到Debug目录下,用“NewDrums.wav”的格式; //或者放在项目下面,用“../../NewDrums.wav”的格式。很傻的错误吧。 } } |
建立第一个directX程序
最新推荐文章于 2024-10-04 10:45:54 发布