PDA

View Full Version : سوال: تغییر زبان زمان اجرای برنامه



morteza_1234m
چهارشنبه 25 شهریور 1388, 22:30 عصر
سلام
دوستان، مشتری یک در خواست داده که البته بیشتر برای کارشکنیه تا انجام امور
گفته وقتی کاربر با دکمه tab وارد یک Textbox می شود زبان بنا به احتیاج تغییر کند بدون آنکه Langauge Bar در Task bar تغییر کندو حتما هم باید در Task barموجود باشد
دوستان راه حلی دارید
امیدوارم مفهوم سئوال رو خوب رسونده باشم

mahdi_7610
چهارشنبه 25 شهریور 1388, 23:16 عصر
سلام

کافیه کدهای زیر را به رویدادهای textBox ی که قراره توش فارسی نوشته بشه اختصاص بدی .

یه نمونه هم واست گذاشتم .


private void textBox1_Enter(object sender, EventArgs e)
{
foreach (InputLanguage lang in InputLanguage.InstalledInputLanguages)
{
if (lang.Culture.Name == "fa-IR")
{
InputLanguage.CurrentInputLanguage = lang;
}
}
}



private void textBox1_Leave(object sender, EventArgs e)
{
InputLanguage.CurrentInputLanguage = InputLanguage.DefaultInputLanguage;
}

موفق باشی

morteza_1234m
چهارشنبه 25 شهریور 1388, 23:22 عصر
خیلی ممنون از جواب شما این روش رو خودم هم بلدم ولی موضوع اینه که شما به این نکته توجه نکردید آنکه نباید Langauge Bar در Task bar تغییر کندو حتما هم Langauge Bar باید در Task barموجود باشد

mortezamhd
پنج شنبه 26 شهریور 1388, 01:45 صبح
سلام دوست عزیز


InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(new System.Globalization.CultureInfo("Fa"));

راستی من هیچ مشکلی باهاشون ندارم
موفق باشی

morteza_1234m
پنج شنبه 26 شهریور 1388, 11:03 صبح
درست می گویید مشکل ندارد ولی همون نکته ای که گفتم مشکل من هست
طرف برای کار شکن این موضوع رو طرح کرده

morteza_1234m
پنج شنبه 26 شهریور 1388, 17:51 عصر
کسی نیست کمک کنه
خیلی مهمه

alireza264
پنج شنبه 23 تیر 1390, 04:56 صبح
int intcht = 0;
int x;
x = e.KeyValue;
private void textbox_KeyDown_1(object sender, KeyEventArgs e)
{
if (e.KeyValue == "کد کلید وارد شده ")
SendKeys.Send("حرف فارسی");
}
مثال:اگر کلید A رو زد حرف ش تو textbox نوشته بشه
if (e.KeyValue ==65)
SendKeys.Send("ش");

alireza264
پنج شنبه 23 تیر 1390, 04:59 صبح
از رویداد keydown یا keypress استفاده کن
private void textbox_KeyDown_1(object sender, KeyEventArgs e)
{
if (e.KeyValue == "کد کلید وارد شده ")
SendKeys.Send("حرف فارسی");
}
مثال:اگر کلید A رو زد حرف ش تو textbox نوشته بشه
if (e.KeyValue ==65)
SendKeys.Send("ش");