PDA

View Full Version : محدود کردن موس



alirezash
دوشنبه 06 مهر 1388, 10:41 صبح
دوستان عزیز چجوری می تونم موس رو محدود داخل یک قسمت از فرم و داخل اون قسمت بتونم با موس طراحی کنم روی فرم

Tasiyan
دوشنبه 06 مهر 1388, 14:05 عصر
Private Type RECT
left As Long
top As Long
right As Long
bottom As Long
End Type

Private Declare Function ClipCursor Lib "user32.dll" (lpRect As Any) As Long

اين تابع ماوس را در يک چهار گوش محصور مي کند تا حرکت ماوس در آن منطقه محدود باشد.
براي لغو انحصار ماوس تابع را با آرگومان &0 اجرا کنيد ( ClipCursor &0 ).
اگر تابع کار خود را با موفقيت به پايان برساند مقدار بازگشتي يک عدد غير صفر و اگر تابع با خطايي مواجه شود مقدار بر گشتي صفر خواهد بود

RECT : اين نوع به محدوده اي که ماوس بايد در آن محصور باشد اشاره مي کند
:لبخند:

MBG73
سه شنبه 07 مهر 1388, 01:02 صبح
من نگرفتم میشه توضیح بدین با یک مثال خواهشا .

farshid_vb
یک شنبه 03 بهمن 1389, 08:27 صبح
یه برنامه ساده بازکن
توش بنویس
ClipCursor
همین
البته کدهای بالا را هم قبلش بالای فورم لودت بنویس
ممنون

ghasemweb
یک شنبه 03 بهمن 1389, 10:17 صبح
از مثال استفاده كن :


Private Declare Function ClipCursor Lib "user32.dll" (lpRect As Any) As Long

Private Type RECT
left As Long
top As Long
right As Long
bottom As Long
End Type

Dim mouse_scope As RECT

Private Sub Command2_Click()
mouse_scope.left = 0
mouse_scope.top = 0
mouse_scope.right = 800
mouse_scope.bottom = 600
res = ClipCursor(mouse_scope)
If res = 0 Then
MsgBox "error in ClipCursor function "
End If

End Sub


مقداري كه براي محدوده وارد ميكني به صورت ريزوليشن كل صفحه مانيتورت هست و براي آزاد كردن هم ميتوني تو تايمر بعد از 10 ثانيه دستور ClipCursor &0 اجرا شه .