تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
جلب الملفات بالأسم فقط
#11
تفضل أخي سامي
كود :
Imports WMPLib

Public Class Form1

    Dim lst As New List(Of String)
    Private Sub OpenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles OpenToolStripMenuItem.Click
        Dim ofb As New OpenFileDialog
        ofb.Filter = "وسائط |*.mp3;*.wmv;*.mp4"
        ofb.InitialDirectory = ""
        ofb.Multiselect = True
        ofb.ShowDialog()
        For Each filename As String In ofb.FileNames
            Dim exten As String = IO.Path.GetExtension(filename).ToLower
            If {".mp3", ".wmv", ".mp4"}.Contains(exten) Then
                lst.Add(filename)
                ListBox1.Items.Add(IO.Path.GetFileNameWithoutExtension(filename))
            End If
        Next
        If ListBox1.Items.Count = 0 = True Then
            MsgBox("أدخل ملف صوتى لو سمحت")
        Else
            ListBox1.SelectedIndex = 0
        End If
        Player.URL = ListBox1.SelectedItem
    End Sub
    'السحب والافلات
    Private Sub ListBox1_DragDrop1(sender As Object, e As DragEventArgs) Handles ListBox1.DragDrop
        If e.Data.GetDataPresent(DataFormats.FileDrop) Then
            Dim filePaths As String() =
            CType(e.Data.GetData(DataFormats.FileDrop), String())
            For Each filename As String In filePaths
                Dim exten As String = IO.Path.GetExtension(filename).ToLower
                If {".mp3", ".wmv", ".mp4"}.Contains(exten) Then
                    lst.Add(filename)
                    ListBox1.Items.Add(IO.Path.GetFileNameWithoutExtension(filename))
                End If
            Next
        End If
        ListBox1.SelectedIndex = -1
    End Sub
    Private Sub ListBox1_DragEnter1(sender As Object, e As DragEventArgs) Handles ListBox1.DragEnter
        If e.Data.GetDataPresent(DataFormats.FileDrop) Then
            e.Effect = DragDropEffects.Copy
        Else
            e.Effect = DragDropEffects.None
        End If
    End Sub
    Private Sub ListBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ListBox1.SelectedIndexChanged
        If ListBox1.SelectedIndex < 0 Then Return
        Dim Filename As String = lst.Item(ListBox1.SelectedIndex)
        If IO.File.Exists(Filename) Then
            Player.URL = Filename
            Player.Ctlcontrols.play()
        End If
    End Sub
    Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
        On Error Resume Next
        Me.Player.settings.setMode("loop", False)
        Player.stretchToFit = True
        If Player.playState = WMPPlayState.wmppsStopped = True Then
            ListBox1.SelectedIndex = ListBox1.SelectedIndex + 1
            Player.URL = ListBox1.SelectedItem


        End If
    End Sub
    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        If My.Settings.san IsNot Nothing Then
            For Each filename As String In My.Settings.san
                lst.Add(filename)
                Me.ListBox1.Items.Add(IO.Path.GetFileNameWithoutExtension(filename))
            Next
        End If
    End Sub
    Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
        My.Settings.san = New ArrayList(lst)
        My.Settings.Save()
    End Sub
    Private Sub حذفقائمةالتشغيلToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles حذفقائمةالتشغيلToolStripMenuItem.Click
        Player.Ctlcontrols.stop()
        lst.Clear()
        ListBox1.Items.Clear()
        My.Settings.san.Clear()
        My.Settings.Save()
    End Sub
    Private Sub ExitToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ExitToolStripMenuItem.Click
        End
    End Sub
    Private Sub تكرارالصوتToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles تكرارالصوتToolStripMenuItem.Click
        Me.Player.settings.setMode("loop", True)
    End Sub
    Private Sub ايقافمؤقتToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ايقافمؤقتToolStripMenuItem.Click
        Player.Ctlcontrols.pause()
    End Sub
    Private Sub ايقافToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ايقافToolStripMenuItem.Click
        Player.Ctlcontrols.stop()
    End Sub
    Private Sub تشغيلToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles تشغيلToolStripMenuItem.Click
        Player.Ctlcontrols.play()
    End Sub

    Private Sub تكرارالكلToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles تكرارالكلToolStripMenuItem.Click
        Timer1.Enabled = True
    End Sub

End Class
الرد }}}
#12
(29-09-18, 06:35 PM)911 كتب : تفضل أخي سامي
كود :
Imports WMPLib

Public Class Form1

   Dim lst As New List(Of String)
   Private Sub OpenToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles OpenToolStripMenuItem.Click
       Dim ofb As New OpenFileDialog
       ofb.Filter = "وسائط |*.mp3;*.wmv;*.mp4"
       ofb.InitialDirectory = ""
       ofb.Multiselect = True
       ofb.ShowDialog()
       For Each filename As String In ofb.FileNames
           Dim exten As String = IO.Path.GetExtension(filename).ToLower
           If {".mp3", ".wmv", ".mp4"}.Contains(exten) Then
               lst.Add(filename)
               ListBox1.Items.Add(IO.Path.GetFileNameWithoutExtension(filename))
           End If
       Next
       If ListBox1.Items.Count = 0 = True Then
           MsgBox("أدخل ملف صوتى لو سمحت")
       Else
           ListBox1.SelectedIndex = 0
       End If
       Player.URL = ListBox1.SelectedItem
   End Sub
   'السحب والافلات
   Private Sub ListBox1_DragDrop1(sender As Object, e As DragEventArgs) Handles ListBox1.DragDrop
       If e.Data.GetDataPresent(DataFormats.FileDrop) Then
           Dim filePaths As String() =
           CType(e.Data.GetData(DataFormats.FileDrop), String())
           For Each filename As String In filePaths
               Dim exten As String = IO.Path.GetExtension(filename).ToLower
               If {".mp3", ".wmv", ".mp4"}.Contains(exten) Then
                   lst.Add(filename)
                   ListBox1.Items.Add(IO.Path.GetFileNameWithoutExtension(filename))
               End If
           Next
       End If
       ListBox1.SelectedIndex = -1
   End Sub
   Private Sub ListBox1_DragEnter1(sender As Object, e As DragEventArgs) Handles ListBox1.DragEnter
       If e.Data.GetDataPresent(DataFormats.FileDrop) Then
           e.Effect = DragDropEffects.Copy
       Else
           e.Effect = DragDropEffects.None
       End If
   End Sub
   Private Sub ListBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ListBox1.SelectedIndexChanged
       If ListBox1.SelectedIndex < 0 Then Return
       Dim Filename As String = lst.Item(ListBox1.SelectedIndex)
       If IO.File.Exists(Filename) Then
           Player.URL = Filename
           Player.Ctlcontrols.play()
       End If
   End Sub
   Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
       On Error Resume Next
       Me.Player.settings.setMode("loop", False)
       Player.stretchToFit = True
       If Player.playState = WMPPlayState.wmppsStopped = True Then
           ListBox1.SelectedIndex = ListBox1.SelectedIndex + 1
           Player.URL = ListBox1.SelectedItem


       End If
   End Sub
   Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
       If My.Settings.san IsNot Nothing Then
           For Each filename As String In My.Settings.san
               lst.Add(filename)
               Me.ListBox1.Items.Add(IO.Path.GetFileNameWithoutExtension(filename))
           Next
       End If
   End Sub
   Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
       My.Settings.san = New ArrayList(lst)
       My.Settings.Save()
   End Sub
   Private Sub حذفقائمةالتشغيلToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles حذفقائمةالتشغيلToolStripMenuItem.Click
       Player.Ctlcontrols.stop()
       lst.Clear()
       ListBox1.Items.Clear()
       My.Settings.san.Clear()
       My.Settings.Save()
   End Sub
   Private Sub ExitToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ExitToolStripMenuItem.Click
       End
   End Sub
   Private Sub تكرارالصوتToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles تكرارالصوتToolStripMenuItem.Click
       Me.Player.settings.setMode("loop", True)
   End Sub
   Private Sub ايقافمؤقتToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ايقافمؤقتToolStripMenuItem.Click
       Player.Ctlcontrols.pause()
   End Sub
   Private Sub ايقافToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ايقافToolStripMenuItem.Click
       Player.Ctlcontrols.stop()
   End Sub
   Private Sub تشغيلToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles تشغيلToolStripMenuItem.Click
       Player.Ctlcontrols.play()
   End Sub

   Private Sub تكرارالكلToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles تكرارالكلToolStripMenuItem.Click
       Timer1.Enabled = True
   End Sub

End Class
جزاك الله كل الخير اخى هو فعلا هذا ما اريد بالضبط...
وتعديل بسيط لو تسمح كى يعمل اول ملف بمجرد جلب الملفات بوضع هذا

كود :
Dim ofb As New OpenFileDialog
       ofb.InitialDirectory = ""
       ofb.Multiselect = True
       ofb.ShowDialog()
       For Each filename As String In ofb.FileNames
           ListBox1.Items.Add(IO.Path.GetFileNameWithoutExtension(filename))
           lst.Add(filename)
       Next
       If ListBox1.Items.Count = 0 = True Then
           MsgBox("أدخل ملف صوتى لو سمحت")
       Else
           ListBox1.SelectedIndex = 0
       End If
       ListBox1.SelectedIndex = 0

       Player.URL = lst.Item(ListBox1.SelectedIndex)
الرد }}}
تم الشكر بواسطة:
#13
شباب ممكن مساعده لاخوكم .بدأت في مشروع ووقفت عن شي . المهم هو
فور يتكون من زر وليست فيو .وتيكست بوكس .
انا اريد لام اضغط علي بويتن واحدد اي قرص صلب . يظهر لي جميع مسارة الملفات .داخل القرص . المحدد ممكن مساعده شباب ضروري

(29-09-18, 11:02 AM)عبدالله الدوسري كتب : ههههههههههههههه
جيت المسار قلت أبي أسماء
جبت أسماء الحين تبي مسار 

كذا تحتاج تحفظ المسار + اسم الملف
:D

إذا راح تستخدم كنترول من من صندوق الأدوات يقبل إضافة العناصر 
مثل الكمبوبكس أو اليست بوكس 
أعمل كلاس صغير يخدمك في حفظ المسار مع اسم الملف :
هذة الطريقة أستخدمها كثير :
انسخ هذا الكلاس ( سميتة على اسمك ابو روضة )  : ضعة في مكان خارج كلاس النافذة 
كود :
Public Class AbuRowdah
   Public FileName As String
   Public FilePath As String
   Public Sub New(ByVal FileName As String, FilePath As String)
       Me.FileName = FileName
       Me.FilePath = FilePath
   End Sub
   Public Overrides Function ToString() As String
       Return Me.FileName
   End Function
End Class





واسخدمة بهذة الطريقة :
عند الإضافة :
كود :
       Using ofb As New OpenFileDialog
           ofb.InitialDirectory = ""
           ofb.Multiselect = True
           If ofb.ShowDialog() = DialogResult.OK Then
               For i As Integer = 0 To ofb.FileNames.Count - 1

                   Dim FullName As String = ofb.FileNames(i)
                   Dim OnlyFileName As String = IO.Path.GetFileNameWithoutExtension(FullName)

                   ' هذا الكلاس تلقائياً راح يعرض اسم الملف فقط داخل الليست بوكس وليس المسار
                   Me.ListBox1.Items.Add(New AbuRowdah(OnlyFileName, FullName))

               Next
           End If
       End Using




وعند الضغط دبل كلك مثلاً : استخدم الكود بهذة الطريقة
كود :
   Private Sub ListBox1_DoubleClick(sender As Object, e As EventArgs) Handles ListBox1.DoubleClick

       ' اسم الملف فقط من العنصر المحدد
       Dim FileName As String = CType(Me.ListBox1.SelectedItem, AbuRowdah).FileName

       ' مسار الملف من العنصر المحدد
       Dim FilePath As String = CType(Me.ListBox1.SelectedItem, AbuRowdah).FilePath

       ' استخدمهم الآن بشكل طبيعي


   End Sub



:idea:

(29-09-18, 11:02 AM)عبدالله الدوسري كتب : ههههههههههههههه
جيت المسار قلت أبي أسماء
جبت أسماء الحين تبي مسار 

كذا تحتاج تحفظ المسار + اسم الملف
:D

إذا راح تستخدم كنترول من من صندوق الأدوات يقبل إضافة العناصر 
مثل الكمبوبكس أو اليست بوكس 
أعمل كلاس صغير يخدمك في حفظ المسار مع اسم الملف :
هذة الطريقة أستخدمها كثير :
انسخ هذا الكلاس ( سميتة على اسمك ابو روضة )  : ضعة في مكان خارج كلاس النافذة 
كود :
Public Class AbuRowdah
   Public FileName As String
   Public FilePath As String
   Public Sub New(ByVal FileName As String, FilePath As String)
       Me.FileName = FileName
       Me.FilePath = FilePath
   End Sub
   Public Overrides Function ToString() As String
       Return Me.FileName
   End Function
End Class





واسخدمة بهذة الطريقة :
عند الإضافة :
كود :
       Using ofb As New OpenFileDialog
           ofb.InitialDirectory = ""
           ofb.Multiselect = True
           If ofb.ShowDialog() = DialogResult.OK Then
               For i As Integer = 0 To ofb.FileNames.Count - 1

                   Dim FullName As String = ofb.FileNames(i)
                   Dim OnlyFileName As String = IO.Path.GetFileNameWithoutExtension(FullName)

                   ' هذا الكلاس تلقائياً راح يعرض اسم الملف فقط داخل الليست بوكس وليس المسار
                   Me.ListBox1.Items.Add(New AbuRowdah(OnlyFileName, FullName))

               Next
           End If
       End Using




وعند الضغط دبل كلك مثلاً : استخدم الكود بهذة الطريقة
كود :
   Private Sub ListBox1_DoubleClick(sender As Object, e As EventArgs) Handles ListBox1.DoubleClick

       ' اسم الملف فقط من العنصر المحدد
       Dim FileName As String = CType(Me.ListBox1.SelectedItem, AbuRowdah).FileName

       ' مسار الملف من العنصر المحدد
       Dim FilePath As String = CType(Me.ListBox1.SelectedItem, AbuRowdah).FilePath

       ' استخدمهم الآن بشكل طبيعي


   End Sub



:idea:
الرد }}}
تم الشكر بواسطة:



التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم