PDA

View Full Version : سوال: جابجایی عکس با دکمه میانی ماوس



vb study
پنج شنبه 30 دی 1389, 19:46 عصر
با سلام خدمت تمامی دوستان
برای جابجایی عکس بویسله دکمه چپ ماوس من از کد زیر استفاده می کردم اما الان نیاز دارم که با دکمه میانی ماوس این کار رو انجام بدم به همین دلیل در کد زیر به جای vbLeftButton عبارت vbMiddleButton را نوشتم ولی برنامه عمل نمیکنه مشکل کار کجاست؟ :متفکر:

Private Declare Function ReleaseCapture Lib "user32" () As Long
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" ( _
ByVal hwnd As Long, _
ByVal wMsg As Long, _
ByVal wParam As Long, _
lParam As Any) As Long

Public Sub ObjectMove(obj As Object)

On Error Resume Next

Call ReleaseCapture
SendMessage obj.hwnd, &HA1, 2, 0&

End Sub
Private Sub Picture2_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

If Button = vbLeftButton Then

ObjectMove Picture2

End If

End Sub

ghasemweb
پنج شنبه 30 دی 1389, 23:33 عصر
حق با شماست اين مسكل براي كليك راست هم هست و فقط با كليك چپ ميشه picture را جابجا كرد.

ghasemweb
جمعه 01 بهمن 1389, 00:48 صبح
از روش زير هم ميتوني استفاده كني :


Dim ox As Integer
Dim oy As Integer
Private Sub Form_DragDrop(Source As Control, X As Single, Y As Single)
Source.Left = X - ox
Source.Top = Y - oy
End Sub
Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = 4 Then
Picture1.Drag
ox = X
oy = Y
End If
End Sub

vb study
جمعه 01 بهمن 1389, 20:20 عصر
ممنون از جوابتون
یه مشکلی که تو این کار هستش اینه که وقتی عمل میکنه که کرسر از باکس عکس خارج بشه
راهی هست که با کلیک روی دکمه میانی ماوس عمل کلیک چپ شبیه سازی بشه؟

ghasemweb
شنبه 02 بهمن 1389, 01:24 صبح
البته كه اون كد كه شما گذاشتيد بسيار دقيق هست ولي فعلا نميدونم چطوري بايد با كليك وسط موس اين كار رو كرد !

vb study
یک شنبه 03 بهمن 1389, 08:28 صبح
دوستان ، مديران عزيز ، ياري كنيد اين مسئله حل بشه
:افسرده::افسرده::افسرده:

vb study
دوشنبه 11 بهمن 1389, 12:00 عصر
دوستان كارم گيره كمك كنيد ممنون ميشم
:گریه::گریه::گریه::گریه::گریه: :گریه::گریه::گریه:

ghasemweb
چهارشنبه 13 بهمن 1389, 12:06 عصر
حالا چه اسراریه که حتما با کلید وسط موس این کارو کنی مثلا بیا کلیک چپ + یک کلید دیگه این کارو کن فکر کنم بشه.

vb study
چهارشنبه 13 بهمن 1389, 15:33 عصر
آخه برنامه من داره همزمان با اتوکد عمل میکنه و کاربر اون بهتره مثل اتوکد از کلید وسط استفاده کنه
فعلا این برنامه داره با کنترل + کلید چپ عمل میکنه

:افسرده::افسرده::افسرده: