العودة   منتدى رياض الجنة - Riad Al-Ganah > الرياض التقنية > روضة الكورسات والدورات التقنية والعلمية > روضة دورات تقنية الـ .NET بلغاتها المختلفة > روضة دورات لغة الـ CSharp > دورة CSharp 2005 من منتديات المشاغب

دورة CSharp 2005 من منتديات المشاغب مقدم الدورة : مجموعة حماة النهضة . حالة الدورة : انتهت . عدد الدروس : 17 درس

إضافة رد

 
أدوات الموضوع انواع عرض الموضوع
  #1  
قديم 03-22-2010, 04:19 PM
الصورة الرمزية khaledbelal
khaledbelal khaledbelal غير متواجد حالياً
مبرمج المنتدى
الادارة تكليف لا تشريف
 
تاريخ التسجيل: Oct 2009
العمر: 34
المشاركات: 3,606
افتراضي الدرس الثالث عشر : التحكم بمستوى الصوت - دورة CSharp 2005

الدرس الثالث عشر


التحكم بالصوت

هناك العديد من الطرق للوصول إلى إجهزة الصوت في نظام التشغيل

منها الطريقة المباشرة و التي تتعامل مباشرة مع محركات أجهزة الصور

وهذه الطريقة معقدة نسبياً وقد تؤدي إلى إعطاب أجهزة الصوت في الحاسوب إذا ما أخطأ المبرمج في تعليمة واحدة

وهناك طرق غير مباشرة تتعامل مع أدوات تشكل وسيط بين أجهزة الصوت ولغة البرمجة

بحيث يسهل التعامل مع الإجهزة , و تجنب أي ضرر في أجهزة الحاسوب إذا ما حدث خطأ ما

الإداة الوسيطة التي سنستخدمها هي أداة Homa_Audio

وهذه الأداة تستخدم إصدار حديث من مكتبة Microsoft.DirectX.dll

وتستخدم مكتبة جديدة Microsoft.DirectX.DirectSound.dll

وبالتالي يجب إستبدال أداة Microsoft.DirectX.dll من الدروس السابقة

بالإصدار الجديد الذي سيتم تنزيله مع الأداة الوسيطة

التطبيق:

أنسخ هذا الملف إلى مجلد Debug داخل مجلد bin داخل مجلد المشروع

الإن إفتح المشروع , ومن نافذة متصفح المشروع إختر Add Reference كما فعلنا في الدرس الرابع :



ستظهر لك هذه النافذة:



إختر Browse من تبويب .Net Assemply ثم أضف ملف

Homa_Audio.dll

الذي قمت بتنزيله

حتى يظهر الملف في قائمة الملفات المختارة رقم 3 , ثم إختر OK

سترى أن الملف تم إضافتها إلى قائمة الملفات الملحقة :



الآن في أعلى كود النافذة الرئيسية للبرنامج

قم بإستدعاء الملف ليتعرف عليه المعالج وذلك بإضافة الكود:
كود PHP:
     using Homa_Audio
يضاف هذا الكود أسفل تعليمات الإضافة السابقة كما في الصورة :



الآن قم بتعريف كائن التحكم بالصوت :
كود PHP:
     private HVolume hv=new HVolume(); 
تحت المتغيرات من الدروس السابقة :

وإذهب إلى التصميم , وإسحب إلى الفورم إداة TrackBar


وغير ترتيب أدوات الفورم حتى يصبح شكلها هكذا :



ثم إختر الأداة التي قمت بإضافتها وغير خاصية Name إلى vt

وغير أيضاً خاصية Value من 0 إلى 10 حيث ستكون هذه هي أداة التحكم بالصوت

من التصميم أنقر مزدوجاً على أداة التحكم بالصوت لتنتقل إلى الكود , ثم أكتب هناك الكود التالي :

كود PHP:
     hv.Volume=vt.Value
كائن التحكم بالصوت hv يحتوي على خاصية Volume تستقبل رقم من 0 إلى 10 يمثل مستوى الصوت

فلو أسندنا لهذه الخاصية القيمة 0 فلن نسمع أي صوت

وبالتالي فهذه الخاصية ستأخذ أي قيمة من 0 إلى 10 من خلال كائن شريط التحكم بالصوت vt

الكود السابق يقوم بقراة قيمة شريط التحكم بالصوت vt و إسنادها إلى كائن التحكم بالصوت hv

الواجب :

أضف مربع إختيار Check Box يمثل خاصية كتم الصوت ليصبح التطبيق هكذا :



مساعدة :

إسحب أداة مربع الإختيار إلى النافذة الرئيسية :



ثم إختره وغير خاصية Name إلى mute وخاصية Text إلى "كتم"

ثم أنقر عليه مزدوجاً لتنتقل إلى الكود وأكتب هذا الكود هناك :
كود PHP:
                 if(mute.Checked)
            {                    
            
hv.Volume=...;
            }
            else
            {
            
hv.Volume=vt.Value;
            } 
الكود السابق يفحص مربع الإختيار إذا كان مختاراً ينفذ من بين الحاصرتين الأولى

وإن لم يكن مختاراً ينفذ ما بين الحاصرتين الثانية وهي إسناد قيمة شريط التحكم بالصوت vt.Value

إلى خاصية Volume في كائن التحكم بالصوت hv

أكل الفراغ بقيمة محددة لكتم الصوت - تم شرحها سابقاً في الدرس -

ثم أرسل التطبيق

ملاحظة :

عند تشغيل التطبيق ثم تفعيل مربع "كتم" سينقطع الصوت

ولكن عند تحريك شريط التحكم بالصوت سيرجع الصوت مع أن مربع "كتم" مفعل

وبالتالي يجب وضح شرط في حدث تحريك كائن الصوت ليتم فحص مربع "كتم"

فإذا كان مربع "كتم" مفعلاً فلا يجب أن يتغير الصوت , ويصبح كود تحريك شريك التحكم بالصوت هكذا :
كود PHP:
                 if(mute.Checked)
            {                    
            }
            else
            {
            
hv.Volume=vt.Value;
            } 
الكود السابق يفحص إذا كان مربع "كتم" مفعل فلن ينفذ شي

وإن لم يكن مفعلاً فسينفذ كود تغيير الصوت

يمكن كتابة الكود السابق بطريقة أخرى , بإستخدام معامل العكس !

حيث يتم إضافة رمز التعجب ! قبل الجملة المنطقية ليعكس الجملة كلها

مثلاً :
كود PHP:
 
                 
if(mute.Checked
تعني إذا كان مربع الكتم مفعل , و :

كود PHP:
                 if(!mute.Checked
تعني إذا لم يكن مربع الكتم مفعلاً

وبالتالي فيمكن كتابة كود تحريك شريط التحكم بالصوت هكذا :
كود PHP:
                 if(!mute.Checked)
            {
            
hv.Volume=vt.Value;
            } 
. نهاية الدرس الثالث عشر





و ما زالت الدروس مستمرة


توقيع : khaledbelal



(أَفَأَمِنَ أَهْلُ الْقُرَى أَن يَأْتِيَهُمْ بَأْسُنَا بَيَاتاً وَهُمْ نَآئِمُونَ {97} أَوَ أَمِنَ أَهْلُ الْقُرَى أَن يَأْتِيَهُمْ بَأْسُنَا ضُحًى وَهُمْ يَلْعَبُونَ {98}
أَفَأَمِنُواْ مَكْرَ اللّهِ فَلاَ يَأْمَنُ مَكْرَ اللّهِ إِلاَّ الْقَوْمُ الْخَاسِرُونَ {99}).
سورة الأعراف.

رد مع اقتباس
إضافة رد


تعليمات المشاركة
لا تستطيع إضافة مواضيع جديدة
لا تستطيع الرد على المواضيع
لا تستطيع إرفاق ملفات
لا تستطيع تعديل مشاركاتك

BB code is متاحة
كود [IMG] متاحة
كود HTML معطلة

الانتقال السريع

المواضيع المتشابهه
الموضوع كاتب الموضوع المنتدى مشاركات آخر مشاركة
الدرس السابع : التنقل في ملف الميديا - دورة CSharp 2005 khaledbelal دورة CSharp 2005 من منتديات المشاغب 0 03-22-2010 03:37 PM
الدرس الخامس : تشغيل ملف فيديو - دورة CSharp 2005 khaledbelal دورة CSharp 2005 من منتديات المشاغب 0 03-22-2010 03:26 PM
الدرس الرابع : الإجراءات والدوال - دورة CSharp 2005 khaledbelal دورة CSharp 2005 من منتديات المشاغب 0 03-19-2010 03:39 PM
الدرس الثالث : الجمل الشرطيه - دورة CSharp 2005 microtop دورة CSharp 2005 من منتديات المشاغب 1 03-16-2010 06:19 PM
الدرس الثاني : المتغيرات - دورة CSharp 2005 khaledbelal دورة CSharp 2005 من منتديات المشاغب 0 03-12-2010 03:56 PM

استضافة الحياة

الساعة الآن 10:27 PM.


Powered by vBulletin® v3.8.4, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. , TranZ By Almuhajir
النسخة الفضية
Ads Management Version 3.0.1 by Saeed Al-Atwi

SlamDesignzslamDesignzEdited by Riad Al-Ganah Team - جميع الحقوق محفوظة لشبكة رياض الجنة

Privacy Policy Valid XHTML 1.0 Transitional By SlamDesignz Valid CSS Transitional By SlamDesignz