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

كيف يتم تعطيل بعض مفاتيح الكيبور وتخصيصها ؟؟

مغلق
بدأه ضاري في 9 مايو 2007 · 27 رد · 6,073 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

كيف حالكم اخواني ان شاء الله تكونوا باتم صحه وعافيه

لدي سؤالين لم اجد لها اجابات وبعد البحث دون جدوى قررت كتباة هذا الموضوع

السؤال الأول :

كيف اقدر امنع او اعطل بعض اوامر او ازرار الكيبورد مثل Alt +Tab او مثل ادارة المهام او مثل Alt +F4

او مثل مفتاح Esc

السؤال الثاني :

كيف اخصص زر من ازرار البرنامج على مفتاح من مفاتيح الكيبورد مثلا :

عندي كومند باسم "موافق" كيف اخصص مفتاح حرف الميم بالكيبورد بحيث

اذا ضغط على حرف الميم من الكيبورد فكانما ضغط بالماوس على زر "موافق"

اتمنى اجد عندكم الحل واتمنى ان هذا الموضوع غير مخالف لانظمة المنتدى

بانتظار الردود والحلول

#2

آخي العزيز

يمكن يتم ذلك عن طريق كود الـ ASCII الخاص بكل مفتاح حيث يمكن وضع كود التعطيل أو التعطيل في الحدث Key Press ومرفق لك برنامج يعرفك الـ ASCII كود لكل مفتاح على لوحة المفاتيح

ASCII.rar

اقتباس

لا تنسوا محمد الدرة وايمان حجو وفارس عودة ....

لا تنسوا القدس وبغداد وبيروت والشيشان ....

ولا تنسوا الشيخ ياسين ود. الرنتيسي وشهداء القضية

اقتباس
لو هدوا بيتي منا خايف لو كسروا عظامي انا زاحف

مواضيعي بالمنتدي

(1) كيف تعمل مؤقت بسهولة

(2) جميع رسائل الخطأ التي قد تظهر عند تشغيل مشروعك في ملف واحد

(3) كيف تنشأ اسم مستخدم وكلمة مرور بصلاحيات معينة لبرنامجك

(4) برنامج لمعرفة الــ ASCII كود لأي مفتاح على لوحة المفاتيح

(5) مثال على نقل عناصر من List Box إلى أخرى مع الترتيب (الفرز)

(6) مثال لتفقيط المبالغ المالية بالحروف

اللهم ارحم والداى كما ربياني صغيراً

%20الجنود%20الامريكيين.jpg

ًWelcome Back

#3

يعطيك العافيه اخوي black_boxer ماقصرت على الرد السريع

ولكن هل لي بشرح اكثر تفصيل

بانتظاركم

#4

اليك هذا المثال و لدينا مربعين نص وكان التركيز على المفتاح الأول ونريد عند الضغط على مفتاح Enter ان ينتقل التركيز إلي مربع النص الثاني فما عليك إلا كتابة الكود التالي في حدث Key Press لمربع النص الأول

   
If KeyAscii = 13 Then
text2.text.SetFocus
End If

وهذا معناه اذا تم الضغط على مفتاح كوده 13 ( ASCII كود لمفتاح Enter ) ينتقل التركيز إلي مربع النص الثانى

وبالتالي عن طريق البرنامج المرفق يمكنك معرفة كود اي مفتاح واستخدامه مثل المثال السابق

ارجو ان اكون اوضحت وإذا لم تتضح الفكرة ارجو تبليغي وان في انتظارك إن شاء الله

:)

اقتباس

لا تنسوا محمد الدرة وايمان حجو وفارس عودة ....

لا تنسوا القدس وبغداد وبيروت والشيشان ....

ولا تنسوا الشيخ ياسين ود. الرنتيسي وشهداء القضية

اقتباس
لو هدوا بيتي منا خايف لو كسروا عظامي انا زاحف

مواضيعي بالمنتدي

(1) كيف تعمل مؤقت بسهولة

(2) جميع رسائل الخطأ التي قد تظهر عند تشغيل مشروعك في ملف واحد

(3) كيف تنشأ اسم مستخدم وكلمة مرور بصلاحيات معينة لبرنامجك

(4) برنامج لمعرفة الــ ASCII كود لأي مفتاح على لوحة المفاتيح

(5) مثال على نقل عناصر من List Box إلى أخرى مع الترتيب (الفرز)

(6) مثال لتفقيط المبالغ المالية بالحروف

اللهم ارحم والداى كما ربياني صغيراً

%20الجنود%20الامريكيين.jpg

ًWelcome Back

#5

اليك هذا المثال و لدينا مربعين نص وكان التركيز على المفتاح الأول ونريد عند الضغط على مفتاح Enter ان ينتقل التركيز إلي مربع النص الثاني فما عليك إلا كتابة الكود التالي في حدث Key Press لمربع النص الأول

   
If KeyAscii = 13 Then
text2.text.SetFocus
End If

وهذا معناه اذا تم الضغط على مفتاح كوده 13 ( ASCII كود لمفتاح Enter ) ينتقل التركيز إلي مربع النص الثانى

وبالتالي عن طريق البرنامج المرفق يمكنك معرفة كود اي مفتاح واستخدامه مثل المثال السابق

ارجو ان اكون اوضحت وإذا لم تتضح الفكرة ارجو تبليغي وان في انتظارك إن شاء الله

:)

اقتباس

لا تنسوا محمد الدرة وايمان حجو وفارس عودة ....

لا تنسوا القدس وبغداد وبيروت والشيشان ....

ولا تنسوا الشيخ ياسين ود. الرنتيسي وشهداء القضية

اقتباس
لو هدوا بيتي منا خايف لو كسروا عظامي انا زاحف

مواضيعي بالمنتدي

(1) كيف تعمل مؤقت بسهولة

(2) جميع رسائل الخطأ التي قد تظهر عند تشغيل مشروعك في ملف واحد

(3) كيف تنشأ اسم مستخدم وكلمة مرور بصلاحيات معينة لبرنامجك

(4) برنامج لمعرفة الــ ASCII كود لأي مفتاح على لوحة المفاتيح

(5) مثال على نقل عناصر من List Box إلى أخرى مع الترتيب (الفرز)

(6) مثال لتفقيط المبالغ المالية بالحروف

اللهم ارحم والداى كما ربياني صغيراً

%20الجنود%20الامريكيين.jpg

ًWelcome Back

#6

يعطيك العافيه اخوي black_boxer

ماقصرت جزاك الله خير

#7
اقتباس
السؤال الثاني :

كيف اخصص زر من ازرار البرنامج على مفتاح من مفاتيح الكيبورد مثلا :

عندي كومند باسم "موافق" كيف اخصص مفتاح حرف الميم بالكيبورد بحيث

اذا ضغط على حرف الميم من الكيبورد فكانما ضغط بالماوس على زر "موافق"

تقدر عن طريق كتابة & قبل الحرف إللي تريد تحدده ، في خاصية Caption

مثلا في كلمة ( موافق ) ، حدد حرف الميم بكتابة ( &موافق ) ، أو حدد مثلا حرف الفاء بكتابة ( موا&فق ) .

يا نفسُ إن لم تصلحي

فتشبهي بالصالحينا

[ أبو العتاهية ]

#8

السلام عليكم

هل توجد طريقة لتعطيل الكيبورد بالكامل فقط

#9
الحبيب99 كتب:
هل توجد طريقة لتعطيل الكيبورد بالكامل فقط
و ليه ده كله :blink: :angry: ؟
#10

السلام عليكم

مشكور اخي BLACK_BOXER

لكن عندي سؤال

::

هو ::

اذا كتبت كذا ::

Private Sub Text2_KeyPress(KeyAscii As Integer)

If keyiscii = 199 Then

Label1.Caption = 1

End If

End Sub

شنو اسوي اريد عند الضغط على أ بالعربية ؟؟

ملاحظة : 199 = ا

startingprogremmer.jpg
#11

مشكور اخي

بس انا اذكر اني سويت هذي بس ما استوى

اما الان جربت مرة اخرى

وبرنامجك مفيد و عجبني هواية :):):):):)

thx thx thx

startingprogremmer.jpg
#12

حسب ما فهمت من كلامك أخي ( مبرمج محترف ) أنك تريد فقط عمل الكود أذا كان الحرف عربي وليس أنجليزي .

أولا لا بد أن تعرف أن الواجهة تعمل على اللغة العربية بواسطة الدالة :

Declare Function GetKeyboardLayoutName Lib "user32" Alias "GetKeyboardLayoutNameA" (ByVal pwszKLID As String) As Long

وهي دالة API

هذه الدالة سوف تعطيك رقم ( ثابت ) لا يتغير في الويندوز تدل هذه الأرقام على اللغة المقابلة لها في نظام التشغيل مثال لو أننا حصلنا على الرقم :

00000401

فأن هذا يعني ان اللغة المستعلة حاليا هي العربية (Arabic)

وأذا حصلنا على الرقم التالي :

00000409 فأن هذا يعني أن اللغة الحالية هي الأنجليزية (English) .

وتعمل كالتالي :

Dim StrName As String

GetKeyBoardLayOutName StrName

If StrName = Val("00000401") Then

Me.Caption = "اللغة الحالية هي عربية "

Else

msgbox StrName

End If

وعند معرفة اللغة المستعملة على الواجهة الحالية تستطيع وضع شرط معين لمعرفة ذلك , سوف أتركها لك .

#13

راجع :

/index.ph...boardLayoutName

بالتوفيق ,,,,,

A7med_prof

تم تعديل هذه المشاركة بواسطة A7med_prof في 10 مايو 2007 في 21:44

اقتباس

آسف الدخول متقطع هذه القتره

اقتباس

[يمين]

.[/يمين]

A7med_prof-4-2007.jpg

اخر مواضيعي 2007

االمثال مطبق على موقع بورصه سعودي

.

.

مواضيع مهمه ومطلوبه بكثره VB6

.

بــرامج ومشــاريع عربيه كامــله {HnHn} والمزيد في قسم برامج الاعضاء || ربط قواعد بيانات اكسس مع الفيجوال بيسك, مادة دراسية كاملة {بنت اليمن}|| المرجع الشامل لجمل SQL ا {GENIUS-IT} || كيفية التعامل مع مكتبة الـ DAO, في الوصول إلى قاعدة بيانات {رمضان} || مثال ريط Visaul Basic 6.0 مع SQL SERVER ا || العمليات التي تجرى على قاعدة البيانات, مثال كامل {بنت اليمن} || تصدير البيانات من الاكسل الي الاكسس بالفيجوال بيسك {HnHn} || البحث في قاعدة البيانات {MANSUR} || قواعد البيانات العلائقية وتقنيات الوصول إليها {عبد الله فتحي} || كيفية أظهار بيانات جدولين بواسطة التاريخ ,,,,,,,

.

أخي ربما سؤالك اجابته في أحدى هذه المواضيع فإن لم تجد قم بالبحث وان لم تجد اطرح سؤالك مع وضع عنوان مناسب بحيث ان يكون هذا العنوان دال على محتوى الموضوع فغير ذلك من أكبر الكبائر في المنتدى وسيؤدي الى غلق او حذف موضوعك .

.

</
#14
الحبيب99 كتب:
السلام عليكم

هل توجد طريقة لتعطيل الكيبورد بالكامل فقط

#15
msayed2004 كتب:
الحبيب99 كتب:

السلام عليكم

هل توجد طريقة لتعطيل الكيبورد بالكامل فقط

و ليه ده كله :blink: :angry: ؟

#16

مشكور اخوي A7med_prof يعطيك العافيه

وياليت تكمل معروفك او اي واحد يتفضل علينا بالحل

انا اريد تعطيل ادارة المهام وتعطيل الاختصارات التالية :

Alt + F4

و

win + d

و

Alt + Tab

ومفتاح:

Esc

بنتظار الحل

#17

السلام عليكم

Private Sub Form_KeyPress(KeyAscii As Integer)

If KeyAscii = 9 Or KeyAscii = 27 Then

MsgBox "", , ""

KeyAscii = 0

End If

End Sub

startingprogremmer.jpg
#18

نسيت ان اقو لك اخي ضاري

بان الكود السابق

لesc و tab اما الازرار البقايا فأنا مبرمج مبتدا ولا اعرف طريقة لهم

startingprogremmer.jpg
#19

اذا ضغط على ctrl + esc

لم ينجح الكود

لو اني اعرف جدول الاسكي كامل لسعدتك

مع تحياتي مبرمج مبتدا

startingprogremmer.jpg
#20

بالنسبة الى d

Private Sub Form_KeyPress(KeyAscii As Integer)

If KeyAscii = 100 or KeyAscii = 68 Then

MsgBox "", , ""

KeyAscii = 0

End If

End Sub

startingprogremmer.jpg
#21

هل هناك خطا اخي ؟؟

startingprogremmer.jpg
#22
الحبيب99 كتب:
السلام عليكم

هل توجد طريقة لتعطيل الكيبورد بالكامل فقط

بالفعل يا أخوان هذا بحثت عنه منذ فترهـ :) ..

وياليت لو على الطريق طريقة إيقاف مفعول الماوس ..

ياليت يا أخوان إيجاد الحل :) ..

#23

اخي اذا اردت ابطال الكيبورد و الماوس

Private Declare Function BlockInput Lib "user32" (ByVal fBlock As Long) As Long

Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

Private Sub Form_Activate()

DoEvents

BlockInput True

Sleep 10000

BlockInput False

End Sub

طبعا هذا الكود لمدة 10 ثوان لان اذا انا سويته ما يشتغل لم يعمل الماوس والكيبورد الا بعد ريستارت :)

تحياتي

نسيت الكود ماخذنه من مكتبة الاكواد

startingprogremmer.jpg
#24

Private Declare Function BlockInput Lib "user32" (ByVal fBlock As Long) As Long

Private Sub Form_Activate()

DoEvents

BlockInput True

end sub

و هذا اذا اردت ابطال الماوس و الكيبورد

لكن ارجاعهما ليس الا بعد عمل ريستاؤت :)

startingprogremmer.jpg
#25

يعطيك العافيه اخوي مبرمج مبتدأ ماقصرت يالغالي

ويالت احد الاخوان يزودنا بمخطط KeyAscii للجميع مفاتيح الكيبورد

والف شكر لك اخوي مبرمج ماقصرت

هذا الموضوع مغلق.

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