الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

تشغيل صوت بعد الانتهاء من الصوت السابق

بدأه nonar في 23 أغسطس 2013 · 2 رد · 565 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

تحياتي ..
عندما أري تشغيل ملف صوتي  عدد من المرات ... مثلا 4

هل استطيع استخدام الدالة for

for (int I=0;I<5;I++)

{

sound.play();

}

 

 

 

المشكلة في أن دالة for لا تنتظر لانتهاء تشغيل الملف الصوتي ..
فهل هناك طريقة من أجل تطبيق ذلك

يعني لا يتم تشغيل الملف الصوتي قبل انتهاء اللف الي يسبقه ؟؟

تحياتي


 

#2

جرب استخدم الوظيفة PlaySync بدلاً من Play، ستشغل الصوت بشكل متزامن لكنها ستجمّد البرنامج، تعمل blocking وستلاحظ تجمّد الواجهة أثناء التشغيل، اذا واجهتك مثل هذه المشلكة فيمكنك تشغيل الصوت في thread لوحده:

 

new Thread(delegate() {
    System.Media.SoundPlayer player = new System.Media.SoundPlayer(@"c:\file.wav");
    for (int i = 0; i < 4; i++)
    {
        player.PlaySync();
    }
}).Start();

 

ستتصرف مثل Play.

1
#3

تحياتي ... وشكراً على الرد السريع ..
الطريقة لم تنفع ...
معذرة لعدم التوضيح فأنا أستخدم الكود في الجوال ... ( يعني الى windows phone )

والصوت من نوع MP3

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…