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

كيف يمكن أستدعاء أكواد ال Texttospeeech من Module

بدأه bakkar2000 في 1 مايو 2009 · 5 رد · 702 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع
post-148704-1241195928_thumb.gif

أخوانى / الكرام..

لدينا فى المرفقات طريقة النطق وهى طبعاً وكما جرت العاده من شرح و إبداعات الأستاذه / زهره

حاولت أن أضع الأكواد فى Module ثم إستدعائها عند الحدث After update لكل Text Box لكــــــن

صادفتنى مشكلة أن لكل Text Box اسم خاص هذا غير أن القاعده بها 65 نموذج و كل نموذج به العديد من الـ Text Box

أرجوا إيجاد طريقه لوضع الأكواد و إستدعائها من module بدلاً من كتابة هذا الكم الهائل من الأكواد

إليكم المرفق للتعديل

ModuleText_To_Speech.rar

تحياتى للجميع 

#2
post-148704-1241355844_thumb.gif

معقول يا أخوانى 10 مرات تحميل وأكثر من 30 قارىء للموضوع و مفيش آى رد

بالطبع حاولت ومازلت أٌحاول وكل المشكله فى الإعلان عن متغير يأخذ أسم الـ Text 

للتقريب مثلاً

هذا الكود مسئول عن تعريف النموذج النشط الحالى 

Dim FRM As Form </P>
Set FRM = Screen.ActiveForm

وهذا الكود الذى أحاول الإعلان به عن اسم الـ Text لكن الكود لا يقبلها ومش عارف السبب

Dim ctl As Control</P>
Set ctl = FRM.ActiveControl

الموضوع كدا أصبح أقرب

الهمه يا أهل الخبره

لكم تحيــــــــــــــــــــــــــــــــاتى 

#3
post-148704-1241355844_thumb.gif

معقول يا أخوانى 10 مرات تحميل وأكثر من 30 قارىء للموضوع و مفيش آى رد

بالطبع حاولت ومازلت أٌحاول وكل المشكله فى الإعلان عن متغير يأخذ أسم الـ Text 

للتقريب مثلاً

هذا الكود مسئول عن تعريف النموذج النشط الحالى 

Dim FRM As Form     Set FRM = Screen.ActiveForm

وهذا الكود الذى أحاول الإعلان به عن اسم الـ Text لكن الكود لا يقبلها ومش عارف السبب

Dim ctl As Control         Set ctl = FRM.ActiveControl

الموضوع كدا أصبح أقرب

الهمه يا أهل الخبره

لكم تحيــــــــــــــــــــــــــــــــاتى 

تم تعديل هذه المشاركة بواسطة bakkar2000 في 3 مايو 2009 في 16:25

#4

اخي الفاضل

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

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

1. انشيء وظيفة عامة لمرة واحده في النموذج بهذا الشكل :

Public Function zaSpeech()
If Forms!ID!Frame254 = 2 Then
Exit Function

ElseIf Forms!ID!Frame254 = 1 And Forms!ID!Frame255 = 1 Then
Dim FRM As Form
Dim ctl As Control
Set FRM = Screen.ActiveForm
Set ctl = FRM.ActiveControl
Dim intEngine As Integer
Dim lngEngine As Long
	tts.Speak (ctl)
ElseIf Forms!ID!Frame254 = 1 And Forms!ID!Frame255 = 2 Then
Call InitialiseVoice
Call SpeakIt(FRM.ctl, 1, "")
End If

End Function

ثم نقوم بإستدعاء هذه الوظيفه لكل مربع نص او مربع تحرير وسرد بهذه الطريقة

Private Sub Ctl2_AfterUpdate()
Call zaSpeech
End Sub

انظر فقط سطر واحد في حدث بعد التحديث لمربع النص

الآن اكمل بقية المشوار مع بقية الحقول بهذه الطريقة وستنطق كل مربعات النص في النموذج

وهذا الملف بعد التعديل للنموذج الأول والحقول الثلاثة الأولى

zaTextToSpeech.rar

بالتوفيق

تم تعديل هذه المشاركة بواسطة zahrah في 3 مايو 2009 في 19:03

#5

post-148704-1241366810_thumb.gif

مرحباً أستاذه / زهره

و أسف جداً لكنى قمت بعمل هذه الأكواد بنفس الطريقة و الفرق أنى كنت أضعها فى Module ثم أقوم بإستدعاء هذه الوظيفه فى آى مكان

ولكن كانت تظهر معى هذه الرسالة فى كل مره وذلك تحديداً كلما أردت تغيير الناطق بصوت رجل آى الإختيار الثانى فى النموذج

post-148704-1241367215_thumb.png

وهذه الرساله التى كثيراً ما أغضبتنى

post-148704-1241367248_thumb.png

ثم تظهر علامات الخطأ فى الكود 

post-148704-1241367263_thumb.png

أرجوا المعذره  

لكى منا أسمى آيات الإحترام

 

تم تعديل هذه المشاركة بواسطة bakkar2000 في 3 مايو 2009 في 19:25

#6
post-148704-1241535971_thumb.gif

أسف أخوانى فهذا ليس إلحاحاً و أعلم أن كل فرد لا يكفية يومة لقضاء عملة

ولكنى أرجوا أن يكون لهذا الأمر حل و أرجوا أن أجده بينكم كما أتمنى أن لا يطول الإنتظار 

و الله يعلم أنى لم أضع الموضوع فى المنتدى إلا بعد أن أستنفذت كل تجربة أتيحت لى و مازلت أحاول و الله يعلم

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

أسف على الإطاله 

post-148704-1241536644_thumb.gif

 

تم تعديل هذه المشاركة بواسطة bakkar2000 في 5 مايو 2009 في 20:58

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

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

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

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

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