نمایش نتایج 1 تا 18 از 18

نام تاپیک: جلوگیری از تغییر زبان توسط کاربر

  1. #1
    کاربر دائمی آواتار f_pakzad
    تاریخ عضویت
    اردیبهشت 1387
    محل زندگی
    مازندران
    پست
    185

    جلوگیری از تغییر زبان توسط کاربر

    زبان فارسی را به عنوان پیش فرض در رویداد enter برای textbox انتخاب کردم.
    حال اگر کاربر زبان را توسط صفحه کلید انگلیسی کند میواهم توسط برنامه تشخیص داده شود و دوباره به زبان فارسی برگردد چگونه این کار را انجام دهم؟

  2. #2
    کاربر دائمی
    تاریخ عضویت
    آذر 1385
    محل زندگی
    تبریز
    پست
    501

    نقل قول: جلوگیری از تغییر زبان توسط کاربر

    برای تغییر زبان کلید alt+ shift فشرده میشه
    تو keydown بررسی کن ببین اگر این دو بود فارسی بکن
    کد تغییر زبان

    System.Globalization.CultureInfo fa = new System.Globalization.CultureInfo("fa-ir");
    InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(fa);

  3. #3

    نقل قول: جلوگیری از تغییر زبان توسط کاربر

    نه لزوما فقط دو کلید alt و shift . ممکنه که کاربر با ماوس از Language Bar پایین صفحه این کار رو بکنه. فکر می کنم اگر خیلی مهم باشه که نوشته ها فارسی بشن فکر کنم بهتره که Edit در TextBox رو خودت به عهده بگیری. یعنی مثلا چه حرف 'J' ، چه 'j' و چه حرف 'ت' زده شد شما همون ت رو می خواهی. پس کد کلید زده شده رو بگیر و خودت پردازش کن. اگر کد مربوط به این کلید (پنجمین حرف از سمت راست صفحه کلید) بود یعنی ت و دیگه نیازی به نگرانی زبان ورودی نداری.

  4. #4
    کاربر دائمی
    تاریخ عضویت
    آذر 1385
    محل زندگی
    تبریز
    پست
    501

    نقل قول: جلوگیری از تغییر زبان توسط کاربر

    و برای تکمیل گفتم می تونی توی activate هم این کد رو بنویسی
    از مدیریت textbox خیلی راحت تر است

  5. #5
    کاربر دائمی آواتار f_pakzad
    تاریخ عضویت
    اردیبهشت 1387
    محل زندگی
    مازندران
    پست
    185

    نقل قول: جلوگیری از تغییر زبان توسط کاربر

    نقل قول نوشته شده توسط behzadk مشاهده تاپیک
    برای تغییر زبان کلید alt+ shift فشرده میشه
    تو keydown بررسی کن ببین اگر این دو بود فارسی بکن
    کد تغییر زبان

    System.Globalization.CultureInfo fa = new System.Globalization.CultureInfo("fa-ir");
    InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(fa);
    برای اینکه بفهمم چه کلیدی فشرده شده باید چه طوری کدشو بنویسم؟

  6. #6
    کاربر دائمی آواتار shytonak
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    بندرعباس
    پست
    529

    نقل قول: جلوگیری از تغییر زبان توسط کاربر

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

  7. #7
    کاربر دائمی آواتار f_pakzad
    تاریخ عضویت
    اردیبهشت 1387
    محل زندگی
    مازندران
    پست
    185

    نقل قول: جلوگیری از تغییر زبان توسط کاربر

    میشه بگید چه طور بفهمم کلیدی فشرده شده یا نه؟؟؟؟؟؟؟

  8. #8
    کاربر دائمی آواتار shytonak
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    بندرعباس
    پست
    529

    نقل قول: جلوگیری از تغییر زبان توسط کاربر

    دوست عزیز منظورت چیه؟بیشتر توضیح بده

  9. #9
    کاربر دائمی آواتار f_pakzad
    تاریخ عضویت
    اردیبهشت 1387
    محل زندگی
    مازندران
    پست
    185

    نقل قول: جلوگیری از تغییر زبان توسط کاربر

    نقل قول نوشته شده توسط shytonak مشاهده تاپیک
    دوست عزیز منظورت چیه؟بیشتر توضیح بده
    همینکه بخوام بفهمم alt+ shift توسط کلربر فشرده شده یا نه؟باید چه طور کدش رو بنویسم؟

  10. #10
    VIP آواتار Sajjad.Aghapour
    تاریخ عضویت
    مهر 1386
    محل زندگی
    اهل کاشانم .. روزگارم بد نیست
    پست
    1,265

    نقل قول: جلوگیری از تغییر زبان توسط کاربر

    در رویداد keyDown این کد رو بنویسید

    if (e.Alt && e.Shift)
    {
    //command
    }
    Close your eyes, take a deep breath, click your heels three times, and say, "There's no better thing than Inversion of Control and Dependency Injection, generic specialization, the decorator pattern, chains of responsibilities, and extensible software."

  11. #11
    کاربر دائمی آواتار f_pakzad
    تاریخ عضویت
    اردیبهشت 1387
    محل زندگی
    مازندران
    پست
    185

    نقل قول: جلوگیری از تغییر زبان توسط کاربر

    نقل قول نوشته شده توسط sajjadlove مشاهده تاپیک
    در رویداد keyDown این کد رو بنویسید

    if (e.Alt && e.Shift)
    {
    //command
    }

    با and نشد اما با or درست شد.
    البته مشکل نوشته شدن حرف اول به صورت انگلیسی هم چنان باقیست.!!

  12. #12
    کاربر دائمی آواتار shytonak
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    بندرعباس
    پست
    529

    نقل قول: جلوگیری از تغییر زبان توسط کاربر

    دوستان کسی نمی خواد دیگه تو این تاپیک شرکت کنه مشکل هنوز کاملا حل نشده حرف اول مشکل داره.چیکار کنیم.

  13. #13
    کاربر دائمی آواتار RED-C0DE
    تاریخ عضویت
    بهمن 1384
    محل زندگی
    31 4E 20 20 54 48 33 20 20 28 72 59 70 54 30 47 33 4E 31 28 20 20 5C 2F 30 52 31 7C 7C 29 20 20 7C 2
    پست
    551

    نقل قول: جلوگیری از تغییر زبان توسط کاربر

    بهترین کار این بود که یک TextBox سفارشی خودت می ساختی که از TextBox ارث می بره و برای اون همه کارایی که لازم داری می کردی تا دیگه نیازی نباشه در رویدادها و بخشهای مختلف رویدادهای مختلف بنویسی و درگیر بشی...!

    اگرم با ساخت TextBox سفارشی مشکل داری بگو...

    ----
    دوستان کسی نمی خواد دیگه تو این تاپیک شرکت کنه مشکل هنوز کاملا حل نشده حرف اول مشکل داره.چیکار کنیم.
    برنامه ای که نوشتین رو اینجا بذارین تا روش صحبت کنیم...

  14. #14
    کاربر دائمی آواتار f_pakzad
    تاریخ عضویت
    اردیبهشت 1387
    محل زندگی
    مازندران
    پست
    185

    نقل قول: جلوگیری از تغییر زبان توسط کاربر

    نقل قول نوشته شده توسط RED-C0DE مشاهده تاپیک
    بهترین کار این بود که یک TextBox سفارشی خودت می ساختی که از TextBox ارث می بره و برای اون همه کارایی که لازم داری می کردی تا دیگه نیازی نباشه در رویدادها و بخشهای مختلف رویدادهای مختلف بنویسی و درگیر بشی...!

    اگرم با ساخت TextBox سفارشی مشکل داری بگو...

    ----


    برنامه ای که نوشتین رو اینجا بذارین تا روش صحبت کنیم...
    این هم برنامه.....
    فایل های ضمیمه فایل های ضمیمه

  15. #15
    VIP آواتار Sajjad.Aghapour
    تاریخ عضویت
    مهر 1386
    محل زندگی
    اهل کاشانم .. روزگارم بد نیست
    پست
    1,265

    نقل قول: جلوگیری از تغییر زبان توسط کاربر


    سلام.ببین اینو برات نوشتم.مشکلتو حل میکنه.......
    فایل های ضمیمه فایل های ضمیمه
    Close your eyes, take a deep breath, click your heels three times, and say, "There's no better thing than Inversion of Control and Dependency Injection, generic specialization, the decorator pattern, chains of responsibilities, and extensible software."

  16. #16
    کاربر دائمی آواتار corona
    تاریخ عضویت
    اردیبهشت 1386
    محل زندگی
    مشهد
    پست
    188

    نقل قول: جلوگیری از تغییر زبان توسط کاربر

    نقل قول نوشته شده توسط RED-C0DE مشاهده تاپیک
    بهترین کار این بود که یک TextBox سفارشی خودت می ساختی که از TextBox ارث می بره و برای اون همه کارایی که لازم داری می کردی تا دیگه نیازی نباشه در رویدادها و بخشهای مختلف رویدادهای مختلف بنویسی و درگیر بشی...!

    اگرم با ساخت TextBox سفارشی مشکل داری بگو...

    ----..
    red -code اگه میشه لطف کن و روش ساخت یک تکست باکس سفارسی رو با یک مثال گو .ممنون

  17. #17
    VIP آواتار Sajjad.Aghapour
    تاریخ عضویت
    مهر 1386
    محل زندگی
    اهل کاشانم .. روزگارم بد نیست
    پست
    1,265

    نقل قول: جلوگیری از تغییر زبان توسط کاربر

    red -code اگه میشه لطف کن و روش ساخت یک تکست باکس سفارسی رو با یک مثال گو .ممنو
    دوست عزیز سورسی که گذاشتم به تکست باکس سفارشیه.می تونی ببینیش...
    Close your eyes, take a deep breath, click your heels three times, and say, "There's no better thing than Inversion of Control and Dependency Injection, generic specialization, the decorator pattern, chains of responsibilities, and extensible software."

  18. #18
    کاربر دائمی آواتار RED-C0DE
    تاریخ عضویت
    بهمن 1384
    محل زندگی
    31 4E 20 20 54 48 33 20 20 28 72 59 70 54 30 47 33 4E 31 28 20 20 5C 2F 30 52 31 7C 7C 29 20 20 7C 2
    پست
    551

    نقل قول: جلوگیری از تغییر زبان توسط کاربر

    red -code اگه میشه لطف کن و روش ساخت یک تکست باکس سفارسی رو با یک مثال گو .ممنون
    همونطور که sajjadlove گفت سورسی که گذاشته همونیه که جواب این تاپیک هستش و یک textBox سفارشی هم حساب می شه...اگه سورس رو نگاه کنین که یک پروژه ClassLibrary هستش (خروجی پروژه، یک فایل dll هست که در واقع TextBox مورد نظر هست) که اگه Class1 > View Code رو بذنین کد مورد نظر رو مشاهده می کنین به اینصورت :


    public class FaTextBox : TextBox
    {
    protected override void OnEnter(EventArgs e)
    {
    InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(new System.Globalization.CultureInfo("fa-IR"));
    base.OnEnter(e);
    }
    protected override void OnKeyPress(KeyPressEventArgs e)
    {
    if (InputLanguage.CurrentInputLanguage.LayoutName == "US")
    {
    e.Handled = true;
    InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(new System.Globalization.CultureInfo("fa-IR"));
    this.Text.Remove(this.Text.Length - 1, 1);
    this.Select(this.Text.Length, 0);
    }
    base.OnKeyPress(e);
    }
    }


    همونطور که می بینید کلاسی نوشته شده به نام FaTextBox که از کلاس System.Windows.Forms.TextBox ارث برده و البته دو رویداد این کلاس رو برای خودش Override کرده...
    هیچ چیز خاص دیگه ای هم نداره...

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •