PDA

View Full Version : مبتدی: استفاده از متغیر در بین نام resourceها



Aftabgardan-cc
دوشنبه 23 خرداد 1390, 16:16 عصر
سلام؛
دوستان، این مثال رو ببینید:
simpleSound.Stream = audio.Resourcex._1;
این کد، یک فایل wav که در منابع هست و اسمش _1‎ هست رو لود می‌کنه.
حالا من می‌خوام این توی یک حلقه باشه و به جای 1 هر بار مقدار i قرار بگیره.
یعنی در حقیقت مثلاً 1 تا 100 شماره فایل‌هاست و من می‌خوام یکی یکی لود بشه.
چطوری می‌تونم i رو به جای 1 قرار بدم؟
راهی هست؟
یعنی مثلاً اینطوری:
for (int i=1; i<=100; i++)
simpleSound.Stream = audio.Resourcex._{i};

Reza_Yarahmadi
دوشنبه 23 خرداد 1390, 19:21 عصر
میتونید بصورت زیر عمل کنید
for (int i = 0; i < length; i++)
{
UnmanagedMemoryStream ms = Properties.Resources.ResourceManager.GetStream("_" + i);
System.Media.SoundPlayer soundPlayer = new System.Media.SoundPlayer(ms);
soundPlayer.Play();
}
از متدهای دیگه ResourceManager هم میشه استفاده کرد.

Aftabgardan-cc
دوشنبه 23 خرداد 1390, 23:09 عصر
آقا رضا ممنون. حل شد.
فقط یه سؤال دیگه:
من نیاز دارم که مدت زمان این فایل‌های صوتی رو هم به میلی ثانیه داشته باشم. اگر روی هارد بود با SoundInfo.GetSoundLength() می‌تونستم، اما این رو موندم. ممنون می‌شم راهنمایی کنید.

gwbasic
سه شنبه 24 خرداد 1390, 09:57 صبح
از ResourceSet هم می تونید استفاده کنید