تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
مشكلة صغيره فى الكود لاكن تاثره كبير
#1
كود :
#Region " Swap ListBox Items by DragDrop "
    Private Sub List_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles ListBox2.MouseDown, ListBox1.MouseDown
        If Windows.Forms.MouseButtons.Right Then
            sender.SelectedIndex = sender.IndexFromPoint(e.X, e.Y)
            If sender.SelectedIndex < 0 Then Exit Sub
            sender.DoDragDrop(sender.SelectedIndex.ToString, DragDropEffects.Move)
        Else
            sender.SelectedIndex = sender.IndexFromPoint(e.X, e.Y)
            If sender.SelectedIndex < 0 Then Exit Sub
            sender.DoDragDrop(sender.SelectedIndex.ToString, DragDropEffects.None)
        End If
    End Sub
    Private Sub List_DragOver(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles ListBox2.DragOver, ListBox1.DragOver
        If Windows.Forms.MouseButtons.Right Then

            e.Effect = DragDropEffects.Move
            Dim pt As Point = sender.PointToClient(New Point(e.X, e.Y))
            Dim drop_index As Integer = sender.IndexFromPoint(pt.X, pt.Y)
            sender.SelectedIndex = drop_index
        End If
    End Sub
    Private Sub List_DragDrop(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles ListBox2.DragDrop, ListBox1.DragDrop
        If sender.SelectedIndex < 0 Then Exit Sub
        Dim SelectedIndex As Integer = sender.SelectedIndex
        Dim i1 As Integer = Int(e.Data.GetData(DataFormats.Text).ToString), i2 As Integer = sender.SelectedIndex
        If i1 > i2 Then
            Dim a As Integer = i1
            i1 = i2 : i2 = a
        End If
        SwapItems(ListBox2, i1, i2)
        SwapItems(ListBox1, i1, i2)
        sender.SelectedIndex = SelectedIndex
    End Sub
    Private Sub SwapItems(ByVal ListBox As ListBox, ByVal SelectedIndex1 As Integer, ByVal SelectedIndex2 As Integer)
        Dim itm1 As Object = ListBox.Items(SelectedIndex1)
        Dim itm2 As Object = ListBox.Items(SelectedIndex2)
        ListBox.Items.RemoveAt(SelectedIndex1)
        ListBox.Items.Insert(SelectedIndex1, itm2)
        ListBox.Items.RemoveAt(SelectedIndex2)
        ListBox.Items.Insert(SelectedIndex2, itm1)
    End Sub
#End Region
الكود لى تحريك الايتم الى فى الست بوكس المشكله عند اضافه هذا الكود لا يمكن تفعيل ContextMenuStrip

لذا جربت ودع If Windows.Forms.MouseButtons.Right Then فى Mouse Down
ولم ينفع برضه هل من هل
الرد }}}
تم الشكر بواسطة:
#2

السلام عليكم ورحمة الله وبركاته





تفضل وكمل

PHP كود :
Private Sub List_MouseDown(ByVal sender As ObjectByVal e As System.Windows.Forms.MouseEventArgsHandles ListBox1.MouseDownListBox1.MouseDown
        
If e.Button <> Windows.Forms.MouseButtons.Left Then Exit Sub 





السلام عليكم ورحمة الله وبركاته
الرد }}}
تم الشكر بواسطة:
#3
تحريك الايتم ازاى وضح حب
الرد }}}
تم الشكر بواسطة:
#4
هي الاداة بتظهر بدون ما تكتب كود
يعني بمجرد ما تعمل RightClick على الاداة مفترض تظهر لك ContextMenuStrip

راجع هـــــــــــذا الموضوع .
Abu Ehab : Microsoft Partner  & Systems Developer
 Youtube   Facebook    Twitter   
الرد }}}
تم الشكر بواسطة:
#5
@@أبورائد@@ كتب :
السلام عليكم ورحمة الله وبركاته





تفضل وكمل

PHP كود :
Private Sub List_MouseDown(ByVal sender As ObjectByVal e As System.Windows.Forms.MouseEventArgsHandles ListBox1.MouseDownListBox1.MouseDown
        
If e.Button <> Windows.Forms.MouseButtons.Left Then Exit Sub 


شكرآ اخى @@أبورائد@@


السلام عليكم ورحمة الله وبركاته

Abu Ehab كتب :هي الاداة بتظهر بدون ما تكتب كود
يعني بمجرد ما تعمل RightClick على الاداة مفترض تظهر لك ContextMenuStrip

راجع هـــــــــــذا الموضوع .
لم تكن تعمل بسبب الكود اخى لاكن الحمد الله تعمل الاده الان بفضل @@أبورائد@@
الرد }}}
تم الشكر بواسطة:



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


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