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

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

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

السلام عليكم

اود ان اطلب منكم خدمة... وهي تختص بدراستي

مطلوب مني عمل تكييف معين للاشخاص فاقدي البصر باستخدام الكمبيوتر، فانا فكرت بعمل برنامج صغير يتضمن التالي:

1- مجموعة من اصوات الحيوانات (بحدود 10 او 20 حيوان) وبعد اظهار صوت الحيوان يتم لفظ اسم الحيوان ويستمع اليه الفاقد للبصر وسيحتوي على اختبار بعد ذلك وهو بان يستمع الفاقد للبصر لصوت الحيوان وتاتي له 3 خيارات وعليه الضغط على المفتاح 1،2،3 لاختيار الاجابة الصحيحة

2- وسيحتوي البرنامج على طريقة لتعليم استخدام الكيبورد بحيث لو تم الضغط على المفتاح (A) يقوم الكمبيوتر بلفظ الحرف (طبعا يتم كتابة الحروف في مربع نص) وفي نفس السياق كاختبار بعد ذلك يقوم الكمبيوتر بلفظ حرف (a) مثلا ويقوم الفاقد للبصر بكتابة الحرف ويوقم الكمبيوتر باعلامه بانه صح ام خطا

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

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

البرنامج المستخدم فيجوال بيسك 6.0

تحياتي

#2

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

اذا كانت الاصوات موجودة على جهازك وكانت بامتداد WAV فيمكنك استخدام الدالة SndPlaySound ويمكنك معرفة كيفية التعامل مع هذه الدالة بزيارة موضوع شرح دوال الـ API الموجود فى توقيعى بالاسفل وهى تقوم بتشغيل ملفات الويف فقط واذا كانت الاصوات لها امتداد اخر فيمكنك استخدام اداة MediaPlayer او اداة Ole فهما يتعاملان من جميع الامتدادات اما طريقة التشغيل طبقاً للحرف المكتوب فستكون كالتالى

Private Sub Text1_KeyPress(KeyAscii As Integer)
Select Case Chr(KeyAscii)
Case "A"
SndPlaySound "C:\A1.wav"
Case "a"
SndPlaySound "C:\a2"
.
.
.
.
.
.
'وبنفس الطريقة الى النهاية
End Sub

اتمنى ان تكون الفكرة واضحة وانا حاضر لاى سؤال باذن الله :rolleyes:

إن قلت قال الله قال رسولـه همزوك همز المنكر المتعالي
أو قلت قد قال الصحابة والألـى تبعاً لهم بالقول والأعمال
أو قلت قـال الشافعي وأحمد و أبو حنيفة والإمام الغالي
صدوا عن وحي الإله ودينـه واحتالوا على حرام الله بالإحلال
يا أمةً لعبت بدين نبيها كتلاعب الصبيان في الأوحال
حاشا رسول الله يحكم بالهوى تلك إذاً حكومة الضلال

feed.1.gif

#3

عزيزي استخدمت الطريقة المذكورة بالاعلى ولكنه يعطيني رسالة خطا في الكود عند الضغط على زر من ازرار الكيبورد

اتمنى الحل في اسرع وقت ممكن

تحياتي

#4

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

اليك الكود اخى العزيز وهو يعمل بطريقة ممتازة

Private Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszSoundName As String, ByVal uFlags As Long) As Long

Private Sub Text1_KeyPress(KeyAscii As Integer)
Select Case Chr(KeyAscii)
Case "A"
sndPlaySound "C:\A1.wav", 1
Case "a"
sndPlaySound "C:\a2.wav", 1
'بنفس الطريقة لباقى الحروف
End Select
End Sub

ان لم يعمل فأنا معك بعد الله :rolleyes:

إن قلت قال الله قال رسولـه همزوك همز المنكر المتعالي
أو قلت قد قال الصحابة والألـى تبعاً لهم بالقول والأعمال
أو قلت قـال الشافعي وأحمد و أبو حنيفة والإمام الغالي
صدوا عن وحي الإله ودينـه واحتالوا على حرام الله بالإحلال
يا أمةً لعبت بدين نبيها كتلاعب الصبيان في الأوحال
حاشا رسول الله يحكم بالهوى تلك إذاً حكومة الضلال

feed.1.gif

#5

الف الف شكر اخي بالفعل يعمل بشكل سليم

لكن بدي اغلبك معي وهو الكود الخاص عندما اقوم بكتابة حرف او ضغط زر من الكيبورد في زر النص الحرف التالي يمسح السابق

على سبيل المثال لو كتبت a وبعدها كتبت b ال b تمحي ال a

ولك كل التحية عزيزي

#6

حسناً , يمكنك استخدام هذا الكود

Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)
Text1.Text = ""
End Sub

ان شاء الله سيعمل ماتريد :rolleyes:

إن قلت قال الله قال رسولـه همزوك همز المنكر المتعالي
أو قلت قد قال الصحابة والألـى تبعاً لهم بالقول والأعمال
أو قلت قـال الشافعي وأحمد و أبو حنيفة والإمام الغالي
صدوا عن وحي الإله ودينـه واحتالوا على حرام الله بالإحلال
يا أمةً لعبت بدين نبيها كتلاعب الصبيان في الأوحال
حاشا رسول الله يحكم بالهوى تلك إذاً حكومة الضلال

feed.1.gif

#7

الف شكر اخي على تعبك مع

ونردها بالافراح

تحياتي

#8

السلام عليكم اخي

لقد قمت بالانتهاء من كتابة البرنامج وكل شئ اصبح على ما يرام ولكن عندما اقوم بتحويله الى ملف exe واقوم بتشغيله يعمل البرنامج بدون ان يعمل الصوت! مع العلم بانني قمت بنسخ الملفات الصوتية الى مجلد البرنامج الذي اقوم بتصميمه وكانت طريقة كتابة الاسماء الصوتية في الكود على هذا الشكل

Case "A"

sndPlaySound "A1.wav", 1

بدون c:\ او مسار الملف لانه في نفس المجلد الخاص بالبرنامج وخلال المعاينة والعمل في الفيجوال بيسك كانت تعمل الاصوات بشكل سليم وايضا كانت تعمل على جهازي الشخصي بدون مشاكل ولكن المشكلة تحدث عند استخدام البرنامج على جهاز اخر! هل هناك ملفات يجب تضمينها الى عملية النسخ؟

والامر الاخر انه عندما كنت استخدم vb5 كانت معه خاصية تحويل المشروع على هيئة setup كيف يمكنني عملها في vb6؟

ولكم مني كل التحية

تم تعديل هذه المشاركة بواسطة gevara في 7 يونيو 2005 في 15:54

#9

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

انا لم اجرب ان اكتب اسم الملف بدون مساره فأنا اكتب المسار كاملاً لتلافى الاخطاء فجرب ان تكتب مسار ملف الصوت كاملاً ثم الملفات الصوتية يجب ان تكون موجودة مع البرنامج عند النسخ وبالنسبة لتحزيم البرنامج Setup فقم بعمل الاتى :

1- اذهب الى قائمة Add-Ins

2- اختر Add-In manager

3- انقر نقر مزدوج على Package And Deployment Wizard ثم اضغط Ok

4- اذهب مرة اخرى الى قائمة Add-Ins

5- ستجد اختيار جديد ظهر لك يسمى Package And Deployment Wizard قم ياختياره ستظهر لك نافذة المعالج الخاص بعملية التحزيم نفذ خطواته وستتم عملية الـ Setup بنجاح ان شاء الله :rolleyes:

إن قلت قال الله قال رسولـه همزوك همز المنكر المتعالي
أو قلت قد قال الصحابة والألـى تبعاً لهم بالقول والأعمال
أو قلت قـال الشافعي وأحمد و أبو حنيفة والإمام الغالي
صدوا عن وحي الإله ودينـه واحتالوا على حرام الله بالإحلال
يا أمةً لعبت بدين نبيها كتلاعب الصبيان في الأوحال
حاشا رسول الله يحكم بالهوى تلك إذاً حكومة الضلال

feed.1.gif

#10

الف شكر اخي وقد تم عمل اللازم ولكن ملفات المكتبات لايتم اغلاقها بعد اغلاق نوافد البرنامج يعني مكتبات ال dll تظل مشغولة بعد الانهاء

شو الحل برأيك

تحياتي

#11

بالاضافة اخي الى شئ اود الاستفسار عنه وهو

انني استخدم الادوات التالية microsoft direct speech synthesis(Xvoice.dll) و اداة microsoft voice text (Tvoice.dll) وهي الخاصة بقراءة الكلمات المكتوبة في مربع نص وقمت بجعلها تعمل بشكل سليم ولكن على جهازي ولكن المشكلة التي واجهتي عند نقلها على جهاز اخر ولكنه لا يحتوى على الفيجوال بيسك والذي وجدته بانها لاتعمل خاصية قراءة النص عليه!! مع العلم بانني قمت بنقل ملفات ال dll المذكورة هل من حل؟

تحياتي

#12

up هل من مجيب

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

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

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

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

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

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