لما نعرف هكذا
كود :
Dim WithEvents AxWindowsMediaPlayer1 As New WindowsMediaPlayer
كيف استطيع اجعل قيمة الـ trackbar تتغير مع تقدم الفيلم او الصوت
من اللي له صلاحية يغير الوسم اللي في الموضوع
1: صاحب الموضوع
2: الإدارة
3: أي عضو (كيف؟)
تقدر تحرك مسطرة TrackBar1 بس طبعا مثل مديابلاير الويندوز لازم تنتظر ثانية أو ثانيتين عشان يحلل مكان النقطة الجديدة ويكمل من عندها
أضفت للمثال 2 لابيل ، الاول Label1 يعرض مدة الفلم كامل والثاني Label2 يعرض النقطة الحالية (العرض على هيئة 00:00)
كود :
Public Class Form1
Dim WithEvents WindowsMediaPlayer As WMPLib.WindowsMediaPlayer = New WMPLib.WindowsMediaPlayer
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim op As New OpenFileDialog
op.Filter = "all media |*.mp3;*.wma;*.mpg;*.avi;*.mp4;*.wmv"
If op.ShowDialog = Windows.Forms.DialogResult.OK Then
' معرفة مدة ملف الفيديو أو الصوت
TrackBar1.Maximum = WindowsMediaPlayer.newMedia(op.FileName).duration
' عرض مدة ملف الفيديو أو الصوت
Label1.Text = WindowsMediaPlayer.newMedia(op.FileName).durationString
' تشغيل
WindowsMediaPlayer.URL = op.FileName
WindowsMediaPlayer.controls.play()
End If
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
' التأكد من التشغيل
If WindowsMediaPlayer.playState = WMPLib.WMPPlayState.wmppsPlaying Then
' معرفة نقطة التشغيل
TrackBar1.Value = WindowsMediaPlayer.controls.currentPosition
' عرض نقطة التشغيل
Label2.Text = WindowsMediaPlayer.controls.currentPositionString
End If
End Sub
Private Sub TrackBar1_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TrackBar1.Scroll
' تغيير نقطة التشغيل
WindowsMediaPlayer.controls.currentPosition = TrackBar1.Value
End Sub
End Class