منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
مشكلة صغيره فى الكود لاكن تاثره كبير - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : مشكلة صغيره فى الكود لاكن تاثره كبير (/showthread.php?tid=8190)



مشكلة صغيره فى الكود لاكن تاثره كبير - مبتدئ - 28-03-13

كود :
#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
ولم ينفع برضه هل من هل


مشكلة صغيره فى الكود لاكن تاثره كبير - @@أبورائد@@ - 28-03-13


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





تفضل وكمل

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 





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



مشكلة صغيره فى الكود لاكن تاثره كبير - just.coder - 28-03-13

تحريك الايتم ازاى وضح حب


مشكلة صغيره فى الكود لاكن تاثره كبير - Abu Ehab - 28-03-13

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

راجع هـــــــــــذا الموضوع .



مشكلة صغيره فى الكود لاكن تاثره كبير - مبتدئ - 28-03-13

@@أبورائد@@ كتب :
السلام عليكم ورحمة الله وبركاته





تفضل وكمل

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

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