PDA

View Full Version : آموزش: برنامه فارسی و انگلیسی کردن کیبورد هنگام اجرای برنامه



behrooz69
چهارشنبه 02 بهمن 1392, 13:05 عصر
سلام دوستان . حتما واستون پیش اومده که برنامه ای نوشتین و دوست داشتین که وقتی برنامتون بالا میاد کیبوردتون به صورت پیشفرض زبانش فارسی بشه .

این یه نمونه برنامه کوچیکه که عمل فارسی و انگلیسی کردن کیبورد رو انجام میده .

میتونین کد فارسی رو تو فرم لود برنامتون بذارین و زبان برنامتون فارسی شه .

115730

یا حق

sagggad
چهارشنبه 02 بهمن 1392, 13:10 عصر
سلام وممنون از برنامتون
اما الان مشکلی ما داریم اکثرا اینه که زبان فقط داخل برنامه خودمون عوض میشه و حالا اگه مثلا وارد نوت پد بشیم به همون حالت اول برمیگرده
درسته؟

behrooz69
چهارشنبه 02 بهمن 1392, 13:19 عصر
اره اون باید با Api کار بشه . من قبلا دنبالش بودم وقتم ززیاد گذاشتم واسش ولی نشد . دوستمم وقت نداره بنویسه واسم .

sagggad
چهارشنبه 02 بهمن 1392, 13:43 عصر
آخ جان
بالاخره خودم ساختمش
هیچ فرقی هم نمیکنه
کلا زبان کیبورد رو عوض میکنه
اول این دوتا رو ایمپورت کنید:

Imports System.Runtime.InteropServices
Imports System.Text

بعد این کدها برای تغییر زبان


<DllImport("User32.dll")> _
Public Shared Function LoadKeyboardLayoutA(pwzsKLID As String, flag As Integer) As Integer
End Function

مثال برای فرخوانی متد:

LoadKeyboardLayoutA("00000429", 1)

تغییر به زبان فارسی
تشکر یادتون نره هااااا:لبخندساده:

Mani_rf
چهارشنبه 02 بهمن 1392, 13:50 عصر
سلام وممنون از برنامتون
اما الان مشکلی ما داریم اکثرا اینه که زبان فقط داخل برنامه خودمون عوض میشه و حالا اگه مثلا وارد نوت پد بشیم به همون حالت اول برمیگرده
درسته؟

اتفاقا به نظر من این یکی از نقات قوت سیستم عامل ویندوز هست. شما تنظیماتی که لازم دارید رو باید برای برنامه خودتون انجام بدید نه این که همه برنامه ها رو مجبور کنید که از تنظیمات دلخواه شما پیروی کنن! کارش نه تنها جالبته بلکه کلی کد برای پیاده سازیش نوشته !

behrooz69
چهارشنبه 02 بهمن 1392, 23:14 عصر
خواهش میکنم داداش مانی

behrooz69
چهارشنبه 02 بهمن 1392, 23:19 عصر
آخ جان
بالاخره خودم ساختمش
هیچ فرقی هم نمیکنه
کلا زبان کیبورد رو عوض میکنه
اول این دوتا رو ایمپورت کنید:

Imports System.Runtime.InteropServices
Imports System.Text

بعد این کدها برای تغییر زبان


<DllImport("User32.dll")> _
Public Shared Function LoadKeyboardLayoutA(pwzsKLID As String, flag As Integer) As Integer
End Function

مثال برای فرخوانی متد:

LoadKeyboardLayoutA("00000429", 1)

تغییر به زبان فارسی
تشکر یادتون نره هااااا:لبخندساده:

سجاد اینو از اون برنامه Full Keyboard Code Project کپی کردی منم قبلا داشتمش ولی کار نمیکنه . تست شدست .

اگه ما بخوایم اینکارو انجام بدیم باید تو دکمه فارسی من کد Default کردن زبان فارسی رو بنویسیم یعنی زبان Default سیستم فارسی شه . اینجوری کلک رشتی میزنیم .

ولی ما فقط نیاز داریم که تو برنامه خودمون فارسی داشته باشیم .


یا حق

sagggad
پنج شنبه 03 بهمن 1392, 05:58 صبح
سجاد اینو از اون برنامه Full Keyboard Code Project کپی کردی منم قبلا داشتمش ولی کار نمیکنه . تست شدست .

اگه ما بخوایم اینکارو انجام بدیم باید تو دکمه فارسی من کد Default کردن زبان فارسی رو بنویسیم یعنی زبان Default سیستم فارسی شه . اینجوری کلک رشتی میزنیم .

ولی ما فقط نیاز داریم که تو برنامه خودمون فارسی داشته باشیم .


یا حق

نه داداش کپی نکردم
این رو از توابع API پیدا کردم خیلی هم دقیق و خوب کار میکنه نمیدونم مشکل تو چیه؟
این دقیقا همون چیزیه که من و شما میخواستیم
تا وقتی که داخل برنامه باشی زبان کل برنامه ها فارسی میشه باز که بیای بیرون دوباره انگلیسی
مشکل چیه؟
ضمنا من هم کار شما رو کوچیک نکردم که جناب Mani_rf این جوری میفرمایند

boveiryghasem
پنج شنبه 03 بهمن 1392, 07:51 صبح
درود بر شما بهروز جان کدت حرررررررررررررررررررررررر رررف نداره.

behrooz69
جمعه 04 بهمن 1392, 03:14 صبح
ممنون boveiryghasem . هدف این تالار مشخصه آموزش . ماهم دنبال آموزش بودیم که بعد یادگیری خواستیم در اختیار دوستان بذاریم.

سجاد ناراحت نشو میدونم از توابع Api پیدا کردی . برنامه (Full Keyboard ) که سایت Code Project گذشته اینم توشه .

تو اول میگی خودم ساختم ( نوشتم درسته )

بعد میگی : این رو از توابع API پیدا کردم :بامزه:

خو دادا 3 خط تیکه کدی که منم گذاشتم همین کارو انجام میده که این تابع انجام میده . فقط مشکل اونجایی پیش میاد که سیستمت ویروسی شه و فایل های Dll شما باز نشه اونوقت User32 و Kernell و ... مشکل دار میشن .

حالا اینا به کنار ما هدف اول قبل این تاپک این بود که بشه تو هر برنامه ای که میریم مثل Notepad یا Word ماکروسافت همچنان زبان ما فارسی بمونه .

مثل من که میرم کلاس تدریس دارم تو ورود آموزش کار مینویسم یهو سرمو بالا میکنم میبینم بنام خدا رو نوشتم fkhl onh . :قهقهه::بامزه:

هدف این بود نه چیزی که شما گشتی . ممنون از وقتی که گذاشتی .

قرار نیست از هم ناراحت شیم تو منو میشناسی که 3 4 ساعت واسه آموزش به تو و بچه ها پست و وقت گذاشتم . پس زود ناراحت نشو...

برنامه نویس نیستم ادعا هم ندارم برنامه نویسی کل نداره هوش میخواد که بتونی 300 خط کد رو به 100 خط و 100 خط رو به 50 خط برسونی با بیشترین کارایی.

من از اساتیدی مثل شما قراره یاد بگیرم .

یا حق