Private Declare Function SetCapture Lib "user32" (ByVal hwnd As Integer) As Long
Private Sub txt_Customer_MouseEnter(sender As Object, e AsEventArgs) Handles txt_Customer.MouseEnter, txt_fax.MouseEnter, txt_Mobile.MouseEnter, txt_Phone1.MouseEnter, txt_Phone2.MouseEnter, txt_Zatea_id.MouseEnter
SetCapture(Me.Handle)
End Sub
ربما هناك طرق اكثر فعالية ولكن هذا ما وجدته اثناء بحثي قبل فترة لتنفيذ هذا الامر
فعلا الكود الذي تفضلت به، نجح في منع المستثمر من الضغط على الحقول النصية عن طريق الماوس،
ولكــــــــــــــن
بحاجة الى منع تغيير مؤشر الماوس عند الاقتراب من الحقول النصية، اي ان يبقى المؤشر على شكل سهم
08-07-13, 04:59 AM (آخر تعديل لهذه المشاركة : 08-07-13, 06:03 AM {2} بواسطة Moo00ooN.)
السلام عليكم ورحمة الله وبركاته
من خلال سؤالك وتفاعل الأخ سنوسيمعك له كل التحية والتقدير، فهمت أن هدفك منع المستخدم من نسخ البيانات التي في مربعات النص
فالحل من ناحية الفأرة (الماوس) قد ذكر الأخ سنوسيفي رده الأخير.
ولكن تبقى ناحية لوحة المفاتيح (الكيبورد)
إذا كنت تريد التطبيق على جميع مربعات النص يكون كالتالي - من نافذة الخصائص غيّر الخاصية KeyPreview لـ Form إلى True
- ثم ضع هذا الأمر (مع تغيير الاسم Button1 إذا كان مختلفاً)
PHP كود :
Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown Me.Button1.Focus() End Sub
أما إذا كنت تريد التطبيق على بعض مربعات النص وليس الكل فيكون كالتالي (مع إضافة مربعات النص القصودة بعد كلمة Handles تفصل بينهم بفاصلة) - ضع هذا الأمر
PHP كود :
Private Sub TextBox_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) _ Handles TextBox1.KeyDown If e.Modifiers = Keys.Control Then e.Handled = True sender.SelectionLength = 0 End If End Sub
وإذا كنت متضايقاً من شكل مؤشر الفأرة على مربعات النص فمن نافذة الخصائص غيّر الخاصية Cursor لمربعات النص إلى Default
بقيت لدي مشكلة وحيدة فقط، موضحة بالصورة المرفقة
وهي تتمثل بامكانية المستثمر من الضغط بالماوس على الليست بوكس المتضمنة ( زبون - مورد - شريك) .....مما يؤدي الى تحريك المؤشر الى ما تم الضغط عليه
رغم انني وضعت في حدث Gotfocus لليست بوكس الكود المذكور senkeytab
هل بالامكان منع المستثمر من الضغط بالماوس داخل حقل الليست بوكس