مجید آرتا 5,870 ارسال شده در 9 آبان، 2017 اشتراک گذاری ارسال شده در 9 آبان، 2017 سلام کاربرای عزیز انجمن انسِر سِنتر امیدوارم تابستون رو ترکونده باشین ( طبق عادتی که همیشه می گیم ) میریم سر اصل مطلب، یکی از دوستان خواستار همچین سورس کدی بود که قرار نبود رایگان بزارم که دیگه چه میشه کرد گفتم جهنم ضرر سورس خیلی ساده ای هستش و توی تصور یه پلیر مثل KM نباشین لطفا :دی یه پراگرس بار و 4 تا دکمه استوپ و وقفه و سیک به عقب و جلو بندازین تنگش میشه یه مدیا پلیر همه چی تموم ( البته یه منیجیر خوشگل واسه اهنگای گوشی ) خب یه عادت خوب یا بدی که دارم، دلم میخواد کدی رو که نوشتم مختصر توضیحی بدم تا واسه کاربر شفاف تر بشه. تابع LoadNames » Sub LoadNames For Each v As View In Activity.GetAllViewsRecursive If v Is Button Then v.Tag = Starter.oggFiles.Get(index) If index < Starter.oggFiles.Size - 1 Then index = index + 1 End If Next End Sub میاد اسم فایلای صوتی رو در میاره، ما توی پوشه Files هستش.شما می تونید از یه پوشه ی خاص بگیرید یا اینکه کل فایلای صوتی رو لیست کنید.ما اینجا محدود کردیم به چنتا دکمه. PlaySound » Sub PlaySound(FileName As Object) mp.Load(File.DirAssets,FileName) mp.Play End Sub یه آرگومان داره از نوع آبجکت! می تونستیم از نوع رشته هم بهش بدیم.اسم فایل رو میدی به تابع واست اهنگ رو پخش می کنه. PlayList » Sub PlayList lstPlay.Clear For i = 0 To PlayQueue.Size - 1 If i = 0 Then lstPlay.AddTwoLinesAndBitmap(PlayQueue.Get(i),"Playing . . .",LoadBitmap(File.DirAssets,"Pause-96.png")) Else lstPlay.AddTwoLinesAndBitmap(PlayQueue.Get(i),"Pause",LoadBitmap(File.DirAssets,"Play-96.png")) End If Next End Sub خب میاد اهنگی که کلیک میشه رو توی لیست واسه پخش شدن اضافه میکنه. رویداد کلیک دکمه » Sub Button_Click Private btn As Button btn = Sender If Runner.Running = False And status = False Then PlayQueue.Add(btn.Tag) Runner.Start(Me,"PlaySound",Array As Object(PlayQueue.Get(0))) Else ToastMessageShow("به لیست پخش اضافه گردید.",False) PlayQueue.Add(btn.Tag) End If PlayList End Sub اینجا ما چندین دکمه داریم که به صورت داینامیک اومدیم کدش رو نوشتیم.هر بار که کلیک بشه روی اهنگ به لیست اضافه میشه و توسط Thread هم اهنگ ها پخش میشن.یه لیست ساخته میشه و یکی یکی پخش میشن تا زمانیکه تموم بشن و ترد کارش تموم میشه. رویداد Complete مربوط به مدیا پلیر » Sub MediaPlayer_Complete status = False If PlayQueue.Size > 0 Then PlayQueue.RemoveAt(0) If PlayQueue.Size > 0 Then Runner.Start(Me,"PlaySound",Array As Object(PlayQueue.Get(0))) PlayList End Sub این رویداد هم وقتیکه اهنگ به اتمام رسید میاد اسمشو از لیست پخش حذف می کنه.( البته این واسه زمانی خوبه که لیست پخش شما Repeat یا تکرار نداشته باشه.) باز پروژه رو با فایلاش اپلود کردم، حواس که نباشه زندگی متحمل خسارت میشه دانلود فایل » PlayerWithList.rar لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
ارسال های توصیه شده
بایگانی شده
این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.