الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كيف أصنع برنامج يضغط أزرار لوحة المفاتيح؟

بدأه WaseemOnLiNe في 24 ديسمبر 2008 · 5 رد · 2,553 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

أريد أن أصنع برنامج يقوم بالضغط مثلاً على مفاتيح

Control + Alt + 1

هل هناك طريقة لذلك؟

أتمنى المساعدة

#2

الصراحة.. سؤالك غير واضح تماماً....

ولكن، إذا كنت تقصد أن يقوم البرنامج بعمل محدد عند ضغط الأزرار الثلاثة Ctrl+Alt+1 فيمكنك استعمال الحدث KeyDown ، إليك هذا الكود:

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = 49 And Shift = 6 Then MsgBox "Hello"
End Sub

قبل كتابة هذا الكود، اضبط خاصية KeyPreview للفورم إلى True لكي تشعر النافذة بحدث الضغط على لوحة المفاتيح، ثم اختر هذا الحدث للـForm وكما ترى فإنه يحوي متغيرين، الأول KeyCode ويشتمل على رقم الزر المضغوط، حيث لكل زر رقم محدد، ورقم الزر الذي يحوي "1" هو 49.

أما المتغير الثاني فهو Shift وهو يراقب حالة الأزرار الثلاثة Shift و Ctrl و Alt فإن ضغط المستخدم الزر Shift فإن المتغير السابق يحوي القيمة 1، وإن ضغط Ctrl فإن المتغير يحوي 2، وإن ضغط Alt فإنه يحوي 4، وإن ضغط زرين معاً فإنه يحوي قيمة جمعهما، يعني مثلاً إذا ضغط Ctrl+Alt فإن المتغير يحوي 2+4 أي 6. وبالتالي فإن الكود السابق يختبر الزر المضغوط فيجده رقم 49، أي الزر 1، ويختبر حالة المتغير Shift فيجدها 6، أي أن المستخدم ضغط Ctrl+Alt وعندها يقوم بتنفيذ الأوامر ، والتي هي في مثالنا إظهار رسالة MsgBox تحوي النص التالي "Hello".

أرجو أن أكون قد أفدتك أخي.

وفقك الله

هذه الجملة خاطئة  :wacko: 


#3

لا لا يا صديقي، لم يكن هذا قصدي، ومع ذلك شكراً لمحاولة المساعدة، إن ما أوده هو أن يقوم البرنامج بضغط تلك الأزرار تلقائياً، بدون ان أضغطها أنا... فعلى سبيل المثال: عندما يصل عداد زمني Timer إلى قيمة معينة، فليضغط على مفاتيح كذا وكذا....

#4

استخدم الأمر SendKeys لضغط الأزرار التي تريدها تلقائيًا .

مثال:

  1.  
  2. SendKeys("^+{ESC}")
  3.  
  4.  

هذا الأمر سيقوم بالضغط على الأزرار Ctrl Shift Esc

يمكنك أيضًا وضع هذا الأمر داخل Timer لضغط الأزرار كل فترة زمنية معينة .

مثال آخر: ضغط الأزرار Ctrl+ALT+1

  1.  
  2. SendKeys("^%{1}")
  3.  
  4.  

لمزيد من المعلومات حول الدالة SendKeys ، قم بزيارة الرابط :

http://msdn.microsoft.com/en-us/library/8c6yea83.aspx

تم تعديل هذه المشاركة بواسطة المبرمج أحمد في 24 ديسمبر 2008 في 22:56

سبحان الله وبحمده ... سبحان الله العظيم

#5

شكراً على المساعدة

ولكنني جرت الأكواد ولم تعمل.... مثال على ذلك

هل يمكن أن تجرب لي برنامج وتضعه في ملف مرفق؟

#6

في هذا المثال وضع أحد الأخوة لوحة مفاتيح عربية بالفيجوال

http://up.7cc.com/dldEKd85947.rar.html

فاعلم أنه لا إله إلا الله

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…