رفتن به مطلب
بخش Unity به انجمن اضافه شد
  • 0

پخش اهنگ و کار با تایمر برای پروگرس بار


sadeghkm82

سوال

سلام دوستان من یه مدیا پلیر ساختم و آهنگم دو دقیقه و نیم هست

با یه تایمر میخام کاری کنم که پروگرس بار به حرکت در بیاد کد هاشو کمی بلدم اما رابطه تایمر (که هر هزار ثانیه میگیره) و پروگرس بار رو نمیدونم 

 

 

الان من که اهنگم دو و نیم دقیقه هست چجوری تو اون قسمت اینشیالایز تایمر ثانیه براش تعیین کنم که پروگرس بار به حرکت در بیاد؟

 

 

 

یکم بد توضیح دادم

لینک ارسال
به اشتراک گذاری در سایت های دیگر

5 پاسخ به این سوال تاکنون داده شده است

ارسال‌های توصیه شده

درود وقت بخیر.

اول نیاز به یک تایمر داری

Sub timer1_Tick
		barPosition.Value = MediaPlayer1.Position / MediaPlayer1.Duration * 100
		Label2.Text =ConvertToTimeFormat(MediaPlayer1.Position)
		Label3.Text=ConvertToTimeFormat(MediaPlayer1.Duration)
End If
End Sub

بعد برای تبدیل زمان به ثانیه نیاز به این ساب داری

 

Sub ConvertToTimeFormat(ms As Int) As String
	Dim seconds, minutes As Int
	seconds = Round(ms / 1000)
	minutes = Floor(seconds / 60)
	seconds = seconds Mod 60
	Return NumberFormat(minutes, 1, 0) & ":" & NumberFormat(seconds, 2, 0) 'ex: 3:05
End Sub

و وقتی که زمان رو به ثانیه تبدیل کردی الان نیاز داری که زمان رو به پروسس بار بدی.

اون شرط هم برای اینه که ببینه کاربر روی سیک بار زمان رو دست کاری نکرده باشه ( موزیک رو عقب جلو نکنه ) که اگر بکنه 100 رو در duration همون عدد میلی ثانیه میکنه و تقسیم بر مقدار میکنه و میفرسته به اون ساب تبدیل کننده و ساب تبدیل میکنه عدد رو به ثانیه معمولی و دوباره برمیگرده به پروسس بار. سوالی داشتی بپرس

Sub barPosition_ValueChanged (Value As Int, UserChanged As Boolean)
	If UserChanged = False Then Return
	MediaPlayer1.Position = Value / 100 * MediaPlayer1.Duration
	End If
ProgressBar1.Progress=Value
	timer1_Tick
End Sub

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 18 ساعت قبل، amir1999 گفته است :

سلام

الان اندازه آهنگ رو برحسب میلی ثانیه داری؟

نه برحسب دقیقه

در 18 ساعت قبل، hocein2 گفته است :

درود وقت بخیر.

اول نیاز به یک تایمر داری


Sub timer1_Tick
		barPosition.Value = MediaPlayer1.Position / MediaPlayer1.Duration * 100
		Label2.Text =ConvertToTimeFormat(MediaPlayer1.Position)
		Label3.Text=ConvertToTimeFormat(MediaPlayer1.Duration)
End If
End Sub

بعد برای تبدیل زمان به ثانیه نیاز به این ساب داری

 


Sub ConvertToTimeFormat(ms As Int) As String
	Dim seconds, minutes As Int
	seconds = Round(ms / 1000)
	minutes = Floor(seconds / 60)
	seconds = seconds Mod 60
	Return NumberFormat(minutes, 1, 0) & ":" & NumberFormat(seconds, 2, 0) 'ex: 3:05
End Sub

و وقتی که زمان رو به ثانیه تبدیل کردی الان نیاز داری که زمان رو به پروسس بار بدی.

اون شرط هم برای اینه که ببینه کاربر روی سیک بار زمان رو دست کاری نکرده باشه ( موزیک رو عقب جلو نکنه ) که اگر بکنه 100 رو در duration همون عدد میلی ثانیه میکنه و تقسیم بر مقدار میکنه و میفرسته به اون ساب تبدیل کننده و ساب تبدیل میکنه عدد رو به ثانیه معمولی و دوباره برمیگرده به پروسس بار. سوالی داشتی بپرس


Sub barPosition_ValueChanged (Value As Int, UserChanged As Boolean)
	If UserChanged = False Then Return
	MediaPlayer1.Position = Value / 100 * MediaPlayer1.Duration
	End If
ProgressBar1.Progress=Value
	timer1_Tick
End Sub

 

ممنون میشه سورس رو کامل بفرستید چون متغیرهاشو لازم دارم

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 3 ساعت قبل، sadeghkm82 گفته است :

ممنون میشه سورس رو کامل بفرستید چون متغیرهاشو لازم دارم

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

کدوم متغیر رو میخوای 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در در 1396/11/15, 22:44:08، hocein گفته است :

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

کدوم متغیر رو میخوای 

تمام متغیرهایی که توی sub_global تعریف کردین لطفا بفرستید

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...