كتبه: karwanpro / بتاريخ: 2013-07-23 , سێ شه‌ممه‌
إن برامج الملتيميديا عادة يحتي على صوت أو مشغل الصوت فمن هنا دعت الحاجة توضيح كيفية التعامل مع الصوت في برنامجك الذي برمجته بلغة فيجوال بيسك سواء استخدمت اداته الخاص المعروف بـ MCI أو استخدمت الصوت بدون اي اداة غير التعليمات الخاصة بالصوت لتشغيله فسنتعلم كل تلك الامور في التعامل مع الصوت في هذا الموضوع



فهناك طريقتين لتشغيل الصوت

تشغيل الصوت دون أدوات
طريقة تشغيل ملف صوت WAV عن طريق برنامجك دون ان تحتاج إلى وضع عنصر تحكم جاهز أضف فورم ووحدة نمطية Module انسخ الأسطر التالية إلى الوحدة النمطية Module
Code
Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszSoundName As String, ByVal uFlags As Long) As Long
Global Const SND_ASYNC = &H1

أضف الكود التالي إلى زر أمر Command
Code
rc = sndPlaySound(إسم ملف الصوت هنا, SND_ASYNC)

لاتنسى تبديل ماهو مكتوب باللون الأزرق إلى عنوان الملف كاملاً لاحظ أنه لايشغل التنسيقات الضخمة مثل mp3 وأحيانأ ملفات الصوت الضخمة أيضاً, هناك طريقة أخرى أيضاً ضع هذه الأسطر في فسم التصريحات General
Code
Private Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszSoundName As String, ByVal uFlags As Long) As Long
Const SND_ALIAS = &H10000
Const SND_ASYNC = &H1
Const SND_SYNC = &H0
Const SND_NOWAIT = &H2000
Const SND_LOOP = &H8

Sub SoundCheck()
Dim lRetVal As Long
lRetVal = sndPlaySound("عنوان الملف هنا", SND_SYNC)
End Sub

أضف السطر التالي إلى زر الأمر Command

Code
SoundCheck


ولاتنسى تكتب مسار الملف كامل

تشغيل الصوت بأداة MCI

هناك طريقة جيدة لتشغيل الصوت بكافة انواعه وهي عن طريق إستخدام عنصر التحكم Microsoft Multimedia Control
طريقة وضعه على الفورم هي :
أنقر بالزر اليمين للماوس فوق صندوق الأدوات . فتظهر لك قائمة إختر منها Components
فيظهر لك مربع حوار يحوي على الأدوات سوف تجد فيها العنصر Microsoft Multimedia Control وأنقر فوق الزر Ok ضعها على الفورم وأضف العناصر التالية
أدوات عرض الملفات
Driver1
Dir1
File1
وأداة النصوص Label1
إضافةً إلى عنصر الملتميديا MMControl1
لاحظ شكل أداة الملتميديا في أسفل النموذج



1- أنقر فوق أداة السواقات Drive1 نقرتين وأكتب السطر التالي
Code
On Error Resume Next
Dir1 = Drive1

وهذا يقوم بعرض المجلدات الموجودة داخل المحرك المحدد
2- أنقر فوق أداة المجلدات Dir1 وأكتب الكود اتالي:
Code
File1 = Dir1

وهو يقوم بعرض الملفات في المجلد المحدد داخل أداة الملفات File1
3- أنقر فوق صندوق الملفات وأكتب السطر الأسطر التالية
Code
Label1 = Dir1.Path & "\" & File1
MMControl1.FileName = Label1
MMControl1.Command = "open"
MMControl1.Command = "play"


السطر الأول يقوم بعرض المسار الكامل للملف المحدد في صندوق الملفات داخل الأداة Label1
السطر الثاني يقوم بتحديد الملف لأداة الملتميديا وهو الملف المكتوب داخل الأداة Label1
السطرين الأخيرين يقومان بتشغيل الملف

لاحظ الأوامر المكتوبة لعنصر التحكم MMControl1 يمكنك إخفاء أداة الملتميديا MMControl1 عن طريق خاصية Visible وبعد ذلك تضيف صور تكون قد صممتها لتكون بدلاً من ازرار العنصر MMControl1
ثم أنقر فوق الصورة التي وضعتها وأكتب الأوامر للأداة MMControl1 مثلاً
في الصورة الأولى لتكن رمز التشغيل:
Code
MMControl1.Command = "play"

في الصورة الثانية لتكن رمز إيقاف مؤقت:
Code
MMControl1.Command = "Pause"

وهكذا ضع الأوامر المعروفة مثلاً Stopو Play .......

يمكنك إضافة ميزات كثيرة أيضا منها شريط الحالة الذي يعطيك إلى أين وصلت قرائة الملف :
أضف إلى الفورم السابق شريط التمرير الأفقي HScroll1 ثم أنقر فوق أداة الملتميديا وإختر الحدث StatusUpdate ثم أكتب الكود التالي:
Code
HScroll1.Value = mm.Position * 100 / MMControl1 .Length

ويمكنك إضافة أداة Label ليتم عرض الوقت الأصلي للملف والوقت الذي تم قرائته كمايلي:
أضف أداتين Label2 و Label3 وأكتب الكود التالي في حدث StatusUpdate لأداة الملتميديا تحت الكود السابق:
Code
Dim a As Integer
Dim b As Integer
a = MMControl1.Length / 1000
b = MMControl1.Position / 1000
Label2.Caption = a
Label3.Caption = b
Share

rss facebooki twitter google plus
فیسبوك
نصيحة برمجية
أصحاب المواقع
مواضيع اخرى
آخر كتاب قرأته