تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
خاصية السحب و الإفلات للصور
#1
السلام عليكم.اخواني كيف اقدر أسحب الصور 2 و 3 و 4 فوق الصورة الكبيرة رقم 1
اسحبهم في المكان الذي تكون به مؤشر الماوس فوق الصورة الكبيرة رقم 1و ليس فوق الصورة رقم 1 كلها بطريقة اني يمكن اسحب مثلا الصورة رقم 2 في عدة اماكن فوق الصورة رقم 1 بارك الله فيكم


الملفات المرفقة
.rar   Drag-Drop.rar (الحجم : 898.88 ك ب / التحميلات : 26)
الرد }}}
تم الشكر بواسطة:
#2
السلام عليكم ورحمة الله وبركاته

مشروعك لم يعمل لدي لكن الي فهمته هذا طلبك



كود :
Dim M As Boolean = False
   Dim x, y As Integer

   Private Sub PictureBox_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PictureBox3.MouseDown, PictureBox2.MouseDown, PictureBox4.MouseDown
       M = True
       sender.BringToFront()
       x = e.X : y = e.Y
   End Sub

   Private Sub PictureBox_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PictureBox3.MouseMove, PictureBox2.MouseMove, PictureBox4.MouseMove
       If M Then
           sender.location = New Point(sender.location.x + e.X - x, sender.location.y + e.Y - y)
       End If
   End Sub

   Private Sub PictureBox_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PictureBox3.MouseUp, PictureBox2.MouseUp, PictureBox4.MouseUp
       M = False
   End Sub
الرد }}}
تم الشكر بواسطة: العيدروس , العيدروس , asemshahen5
#3
بارك الله فيك اخي 3booody على المساعدة . هي تقريبا مثل هكذا مثال .لكن الصور رقم 2 و رقم 3 و رقم 4 يبقو في مكانهم لانهم الموديل و يمكن اسحب الصور 2 و 3 و 4 فوق الصورة رقم 1 عدة مرات
يعني عندي صورة سيارة و التي هي الصورة رقم 1 . و الصور 2 و 3 و 4 تمثل انواع الاضرار . اريد لما يكون هناك ضرر في منطقة معينة اسحب نوعه فوق المكان المناسب و قد يكون نفس الضرر بأمكام عدة مختلفة من السيارة . الفكرة كلها لمعاينة الاضرار بارك الله فيك
الرد }}}
تم الشكر بواسطة: 3booody , asemshahen5
#4
تفضل اخي وعذرآ عالتأخير شويا القياسات كانت متعبة وبالنسبة لقياسات الصورة انا عملتها على قياسات العندي اذا صارت عندك مشكلة فقط غير القياسات

الكود عملته عن طريق الرسم واذا اردت تحريك الصورة ايضآ عند نقلها حتى اغير الكود وما اعمله عن طريق الرسم



كود :
Dim x, y As Integer
   Dim wid As Integer = 0
   Private Sub PictureBox_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PictureBox3.MouseDown, PictureBox2.MouseDown, PictureBox4.MouseDown
       Clipboard.SetImage(CType(sender, PictureBox).Image)
       x = e.X : y = e.Y
       Cursor = Cursors.NoMove2D
   End Sub

   Private Sub PictureBox_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PictureBox3.MouseUp, PictureBox2.MouseUp, PictureBox4.MouseUp
       Dim gr As Graphics = PictureBox1.CreateGraphics
       If sender Is PictureBox2 Then
           gr.DrawImage(Clipboard.GetImage, wid + e.X, e.Y - 12, 40, 40)
       ElseIf sender Is PictureBox3 Then
           gr.DrawImage(Clipboard.GetImage, wid + e.X, e.Y + PictureBox3.Location.Y - 24, 40, 40)
       ElseIf sender Is PictureBox4 Then
           gr.DrawImage(Clipboard.GetImage, wid + e.X, e.Y + PictureBox4.Location.Y - 24, 40, 40)
       End If
       Cursor = Cursors.Default
   End Sub

   Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
       wid = PictureBox1.Width
   End Sub
الرد }}}
تم الشكر بواسطة: asemshahen5



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


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