السلام عليكم
بالنسبه لمعرفه اللغه المستخدمه للكتابه على لوحه المفاتيح هل هى العربيه ام الانجليزيه .
انا استخدمت الداله
GetKeyboardLayout
التعريف :
Declare Function GetKeyboardLayout Lib "user32" (ByVal dwlayout As Long) As Long
الاجراء اللى كتبتو
Sub keyboardlang() Dim kbd As Long kbd = GetKeyboardLayout(0) If Right(kbd, 1) = 3 Then 'ar Form1.text1 = "ar" Else 'en Form1.text1 = "en" End If End Sub
انا بستدعى الاجراء من داخل تايمر كل ثنيه الكود شغال و كل حاجهتمام بس المشكله انى مثلا لو فتحت برنامج ال word و بدائت اكتب فيه لما بغير لغه الكتابه من الانجليزى للعربى او العكس عن طريق الضغط على الت و كونترول الكود السابق لا يلاحظ التغير و يبقى على القرائه اللى اخذها عند بدايه البرنامج
انا كل اللى عايزو انى لما اغير اللغه اثناء الكتابه على اى صفحه يقوم بقرائتها على طول اى البرنامج يعرف ان اللغه اتغيرت انا لاحظت ان المشكله كلها ان الكود السابق يعمل فى ظل التركيز على نافذه البرنامج و عدم الخروج عنها اى لما بكون بداخل البرنامج اللى انا عامله بيلاحظ التغير بس لما بخرج عنه لا يائخذ اعتبار اى تغير فى اللغه
يا ريت من الاخوه الاعضاء اللى عندو حل للمشكله دى يساعدنى و جذاه الله كل خير