PDA

View Full Version : پخش چند آهنگ



setareh2013
شنبه 28 مرداد 1391, 14:45 عصر
سلام
کد زیر یک آهنگ رو توسط ویندوز مدیا پلیر در حالت win app پخش می کنه.
axWindowsMediaPlayer1.URL = Application.StartupPath
+"\\Kalimba.mp3"
سوالم اینه که اگه بخوام بیشتر از یک آهنگ رو پخش کنم باید چه کار کنم و اینکه چه طور میشه این قابلیت رو داد که کاربر خودش چند تا آهنگ رو توسط open file dialog انتخاب کنه .

با تشکر

h_assefi
شنبه 28 مرداد 1391, 15:14 عصر
لینک های زیر را یه سری بزن، خوبه، به جواب میرسی
http://stackoverflow.com/questions/9130666/how-to-play-next-item-on-playlist-with-axmediaplayer
http://social.msdn.microsoft.com/Forums/en-US/vbgeneral/thread/e75d6435-2eaa-4193-b0e8-cdaf0e078a19/

sinaprog
شنبه 28 مرداد 1391, 17:31 عصر
این طوری برای هربار که برنامه اجرا بشه ذخیره میشه

OpenFileDialog op=new OpenFileDialog();
op.Filter="All files|*.*";
if (DialogResult.OK == op.ShowDialog())
{
StreamWriter sw = new StreamWriter(Application.StartupPath + "playlist.m3u", true);
sw.Write(op.FileName + '\n');
sw.Close();
sw.Dispose();
}
axWindowsMediaPlayer1.URL = Application.StartupPath + "playlist.m3u";


اول برنامه هم باید اینو اضافه کنی

using System.IO;

setareh2013
یک شنبه 29 مرداد 1391, 14:29 عصر
با تشکر از شما
این کد ها رو امتحان کردم . مشکل اینه که فقط یک آهنگ رو می تونم انتخاب کنم . بقیه انتخاب نمیشن . یه مشکل دیگه هم اینه که وقتی یک آهنگ رو انتخاب کردم انگار یه جایی ثبت میشه چون هر آهنگ دیگه ای که انتخاب کنم همون قبلی رو می خونه .

setareh2013
یک شنبه 29 مرداد 1391, 14:37 عصر
لینک های زیر را یه سری بزن، خوبه، به جواب میرسی
http://stackoverflow.com/questions/9130666/how-to-play-next-item-on-playlist-with-axmediaplayer
http://social.msdn.microsoft.com/Forums/en-US/vbgeneral/thread/e75d6435-2eaa-4193-b0e8-cdaf0e078a19/
با تشکر از شما
در این لینکی که شما گفتین از listBox1 استفاده شده . در حالی که من میخوام بدون هیچ کنترل اضافه ای فقط سه تا آهنگ پشت سرهم پخش بشه و وقتی تموم شد دوباره از اول پخش کنه .

setareh2013
یک شنبه 29 مرداد 1391, 15:33 عصر
برای اضافه کردن چند آیتم به پلی لیست if (openFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
foreach (string st in openFileDialog1.FileNames)
axWindowsMediaPlayer1.currentPlaylist.appendItem(a xWindowsMediaPlayer1.newMedia(st));
}

برای خالی کردن پلی لیست axWindowsMediaPlayer1.currentPlaylist.clear();

با تشکر از شما
این روش رو هم امتحان کردم ولی باز هم فقط یک آهنگ رو می تونم انتخاب کنم .
میشه بگین چه طوری می تونم فایلی که درست کردم رو به این تاپیک پیوست کنم.
با تشکر

sinaprog
یک شنبه 29 مرداد 1391, 18:08 عصر
سلام این دکمه رو بزن که بره آهنگ بعدی
91517
برای اینکه چند تا فایلو بتونی انتحاب کنی
OpenFileDialog op=new OpenFileDialog();
op.Filter="All files|*.*";
op.Multiselect = true;
if (DialogResult.OK == op.ShowDialog())
{
foreach (string path in op.FileNames)
{
StreamWriter sw = new StreamWriter(Application.StartupPath + "playlist.m3u", true);
sw.Write(path + '\n');
sw.Close();
sw.Dispose();
}

}
axWindowsMediaPlayer1.URL = Application.StartupPath + "playlist.m3u";

setareh2013
یک شنبه 29 مرداد 1391, 19:19 عصر
سلام این دکمه رو بزن که بره آهنگ بعدی
91517
برای اینکه چند تا فایلو بتونی انتحاب کنی
OpenFileDialog op=new OpenFileDialog();
op.Filter="All files|*.*";
op.Multiselect = true;
if (DialogResult.OK == op.ShowDialog())
{
foreach (string path in op.FileNames)
{
StreamWriter sw = new StreamWriter(Application.StartupPath + "playlist.m3u", true);
sw.Write(path + '\n');
sw.Close();
sw.Dispose();
}

}
axWindowsMediaPlayer1.URL = Application.StartupPath + "playlist.m3u";



ممنون از لطفتون
خیلی خیلی کمکم کردین

setareh2013
پنج شنبه 13 مهر 1391, 21:47 عصر
سلام
یه مشکل دیگه هم داشتم اون هم اینکه چه کار کنم وقتی آهنگ تموم شد ، خودکار دوباره از اول شروع به پخش کنه
با تشکر

sinaprog
جمعه 14 مهر 1391, 11:03 صبح
OpenFileDialog op=new OpenFileDialog();
op.Filter="All files|*.*";
op.Multiselect = true;
if (DialogResult.OK == op.ShowDialog())
{
foreach (string path in op.FileNames)
{
StreamWriter sw = new StreamWriter(Application.StartupPath + "playlist.m3u", true);
sw.Write(path + '\n');
sw.Close();
sw.Dispose();
}

}
axWindowsMediaPlayer1.URL = Application.StartupPath + "playlist.m3u";
axWindowsMediaPlayer1.settings.playCount = 1000;