اگه بخوام تو برنامه زبان نوشتن رو از انگلیسی به فارسی تغییر بدم باید چی کار کنم؟ منظورم برنامه ای که خودم
نوشتم ومی خوام کاربر فارسی توش بنویسه بدون زدن کلید های ویندوز برای تغییر زبان؟
Printable View
اگه بخوام تو برنامه زبان نوشتن رو از انگلیسی به فارسی تغییر بدم باید چی کار کنم؟ منظورم برنامه ای که خودم
نوشتم ومی خوام کاربر فارسی توش بنویسه بدون زدن کلید های ویندوز برای تغییر زبان؟
دوست عزیز برای این کار 2راه وجود داره:
1-میتونی با استفاده از کد اسکی یکی یکی حروف رو به فارسی تبدیل کنی که چند مدت پیش یکی از دوستن مبحثش رو ایجاد کرده بود.و خیلی درد سر داشت.البته تو ای روش زبان صفحه کلید رو تغیر نمیدی
بلکه تبدیل میکنی.
2-میتونی از api ویندوز استفاده کنی که راحت تر هست اینم روش تعریف تابع:
***کد:Private Const KL_NEXT = 1
Private Const KL_PREV = 0
Private Declare Function ActivateKeyboardLayput Lib "user32.dll" (ByVal HKL As Long , ByVal Flags As Long) As Long
موفق باشید:46:کد:اين تابع زبان صفحه کليد را تغيير مي دهد.
اگر تابع کار خود را با موفقيت به پايان برساند مقدار بازگشتي يک عدد غير صفر و اگر تابع با خطايي مواجه شود مقدار بر گشتي صفر خواهد بود
HKL : اين آرگومان تعيين مي کند بايد زبان قبلي بر روي صفحه کليد اعمال شود با زبان بعدي
KL_NEXT : زبان بعدي را روي صفحه کليد اعمال مي کند
KL_PREV : زبان قبلي را روي صفحه کليد اعمال مي کند
Flags : مقدار اين متغير را برابر &0 قرار دهيد
شما میتونید از دستور sendkeys استفاده کنید
دستور زیر معادل همان alt + shift میباشد :
کد:SendKeys "%+" 'alt+shift
موفق باشید