تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] مفتاح المسافة
#2
(18-12-25, 10:01 PM)ZEEN4ZEEN كتب : السلام عليكم جميعا 
هل يمكن الغاء مفتاح المسافة فى لوحة المفاتيح فهو يعمل عمل مفتاح انتر هل من طريقه بإلغائه بحيت لا يعمل اى حدث
المشروع. تطبيق وندوز. Vb net

و عليكم السلام ورحمة الله و بركاته
سالت قوقل فاجاب:
إقتباس :نعم، يمكنك إلغاء وظيفة مفتاح المسافة (Spacebar) في تطبيق Windows باستخدام VB.NET عن طريق اعتراض ضغط المفتاح داخل تطبيقك (مثل حدث KeyDown) والتحقق مما إذا كان المفتاح المضغوط هو مفتاح المسافة، ثم منع السلوك الافتراضي له (إدخال مسافة) أو تنفيذ حدث خاص بك بدلاً منه (مثل تجاهله)، مما يمنعه من إطلاق حدث "Enter" (إذا كان مرتبطًا به). 
الطريقة في VB.NET (لمنع السلوك الافتراضي):
حدد العنصر (Control) الذي تريد تطبيق هذا عليه (مثل TextBox أو Form بأكمله).
أضف معالج حدث KeyDown: في نافذة الخصائص (Properties)، اختر العنصر، ثم اختر الحدث KeyDown من القائمة المنسدلة.
Private Sub YourControl_KeyDown(sender As Object, e As KeyEventArgs) Handles YourControl.KeyDown
    If e.KeyCode = Keys.Space Then
        ' منع السلوك الافتراضي لمفتاح المسافة (مثل إدخال مسافة أو تشغيل Enter)
        e.Handled = True
        e.SuppressKeyPress = True ' لمنع إصدار الصوت وأي سلوك إضافي
    End If
    ' يمكنك إضافة كود آخر هنا لمعالجة مفتاح Enter أو أي مفتاح آخر
    If e.KeyCode = Keys.Enter Then
        ' كود خاص بمعالجة مفتاح Enter إذا أردت
        ' e.Handled = True ' لمنع السلوك الافتراضي لـ Enter أيضًا
    End If
End Sub

e.Handled = True: يخبر النظام بأن الحدث قد تمت معالجته ولا يجب أن يمر إلى العناصر الأخرى.
e.SuppressKeyPress = True: يمنع أي سلوك إضافي مرتبط بضغط المفتاح، بما فيهم صوت النظام إذا ضغطت مفتاحًا خاطئًا.
لماذا يعمل كـ Enter؟
في بعض مربعات الحوار (Dialog Boxes) في Windows، إذا لم يكن هناك زر افتراضي (مثل زر "OK") أو كان التركيز على حقل نصي (TextBox) في مربع حوار، فإن الضغط على مفتاح المسافة قد يتم تفسيره كـ "Enter" وتشغيل الإجراء الافتراضي (مثل الضغط على زر افتراضي أو الانتقال للسطر التالي). بمنع السلوك الافتراضي لمفتاح المسافة باستخدام الكود أعلاه، فإنك تمنعه من إطلاق حدث الـ Enter. 
لإلغاء مفتاح المسافة تمامًا على مستوى النظام (غير موصى به للتطبيق):

يمكن استخدام أدوات خارجية لإعادة تعيين المفاتيح (Key Remapping Tools) مثل AutoHotkey، ولكن هذا يؤثر على النظام كله وليس فقط تطبيقك. 
اللهم إني أعوذ بك من غلبة الدين وغلبة العدو، اللهم إني أعوذ بك من جهد البلاء ومن درك الشقاء ومن سوء القضاء ومن شماتة الأعداء
اللهم اغفر لي خطيئتي وجهلي، وإسرافي في أمري وما أنت أعلم به مني، اللهم اغفر لي ما قدمت وما أخرت، وما أسررت وما أعلنت وما أنت أعلم به مني، أنت المقدم وأنت المؤخر وأنت على كل شيء قدير
الرد }}}
تم الشكر بواسطة: ZEEN4ZEEN


الردود في هذا الموضوع
مفتاح المسافة - بواسطة ZEEN4ZEEN - 18-12-25, 10:01 PM
RE: مفتاح المسافة - بواسطة justforit - 18-12-25, 11:56 PM

المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [VB.NET] كيف اقوم بمنع المستخدم من استخدام الكيبورد وخصوصا مفتاح Print screen Ameenh 0 483 07-10-23, 10:45 PM
آخر رد: Ameenh
  [SQL] كيف انشئ مفتاح ترقيم تلقائى mmaalmesry 2 1,256 17-07-21, 11:54 AM
آخر رد: mmaalmesry
  عند الضغط على مفتاح enter من لوحة المفاتيح EHAB.NET 7 8,352 27-11-20, 07:15 PM
آخر رد: Anas Mahmoud
  كود اظهار اسم الصنف عند الخروج او مفتاح التاب علي كعبي 6 2,631 02-01-20, 11:43 PM
آخر رد: علي كعبي
Exclamation [VB.NET] مفتاح الانتر مع مربع نص متعدد الاسطر سميـر 17 4,010 23-08-19, 12:54 AM
آخر رد: سميـر
  [VB.NET] مشكل مفتاح قاعدة البيانات Autonumber sniperjawadino 4 2,594 30-06-19, 06:38 PM
آخر رد: sniperjawadino
  كيف يتم استخدام مفتاح التنقل Tab بشكل صحيح Hazem1 6 4,776 04-09-18, 07:53 AM
آخر رد: elgokr
  [سؤال] طريقة حذف مفتاح من الريجستري سعود الشامان 7 4,814 04-10-17, 06:19 PM
آخر رد: سعود الشامان
  مفتاح واحد يغلق الفورم ويفتحها نفسها بعد ثانيتين khaled12345 2 2,012 20-06-17, 11:00 AM
آخر رد: khaled12345
  جعل مفتاح انتر يعمل عمل مفتاح تاب مع الداتا جريد فيو cvcvcv 7 8,421 15-11-16, 09:00 PM
آخر رد: samnaj00

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


يقوم بقرائة الموضوع: