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

نام تاپیک: BackSpace

  1. #1
    کاربر دائمی آواتار shima2006
    تاریخ عضویت
    مرداد 1385
    محل زندگی
    تهران
    سن
    39
    پست
    339

    BackSpace

    سلام دوستان

    private void textbox_KeyPress(object sender, KeyPressEventArgs e)
    {
    if (!(e.KeyChar >= '0' && e.KeyChar <= '9'))
    e.Handled = true;
    }

    چیکار کنم که BackSpace هم کار کنه؟
    آخرین ویرایش به وسیله Mahmoud.Afrad : چهارشنبه 04 تیر 1393 در 15:12 عصر

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

    نقل قول: BackSpace

    شما بايد كد كليد فرستاده شده بفرستيد نه اينكه مقايسه رو انجام بدهبد

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

    نقل قول: BackSpace

    نقل قول نوشته شده توسط shima2006 مشاهده تاپیک
    سلام دوستان

    privatevoid textbox_KeyPress(object sender, KeyPressEventArgs e)
    {
    if (!(e.KeyChar >= '0' && e.KeyChar <= '9'))
    e.Handled =
    true;
    }
    چیکار کنم که BackSpace هم کار کنه؟
    میتونی توی خاصیتkeydown از کد زیر استفاده کنید
    if (e.KeyCode = Keys.Back)
    {
    }

    اما توی keyprees باید کد کلید رو قرار بدی یعنی برای backSpase کد 32
    با تشکر

  4. #4
    کاربر دائمی آواتار M.YasPro
    تاریخ عضویت
    آبان 1386
    محل زندگی
    Kernel
    پست
    1,171

    نقل قول: BackSpace

    سلام


    private bool nonNumberEntered = false;
    private void textBox1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
    {
    nonNumberEntered = false;
    if (e.KeyCode < Keys.D0 || e.KeyCode > Keys.D9)
    {
    if (e.KeyCode < Keys.NumPad0 || e.KeyCode > Keys.NumPad9)
    {
    if (e.KeyCode != Keys.Back)
    {
    nonNumberEntered = true;
    }
    }
    }
    }

    private void textBox1_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
    {
    if (nonNumberEntered == true)
    {
    e.Handled = true;
    }
    }



    این کد برای MSDN هست .

  5. #5
    کاربر دائمی آواتار shima2006
    تاریخ عضویت
    مرداد 1385
    محل زندگی
    تهران
    سن
    39
    پست
    339

    نقل قول: BackSpace

    میتونی توی خاصیتkeydown از کد زیر استفاده کنید

    کد:
    if (e.KeyCode = Keys.Back) { }
    این رو من نوشتم ولی پیغام خطا میده

    keypress هم که گفتید ، خب نمی دونم این 32 رو چطوری باید اضافه کنم!

  6. #6
    کاربر دائمی آواتار shima2006
    تاریخ عضویت
    مرداد 1385
    محل زندگی
    تهران
    سن
    39
    پست
    339

    نقل قول: BackSpace

    این کد برای MSDN هست .

    این یعنی چی؟

  7. #7
    کاربر دائمی
    تاریخ عضویت
    آبان 1386
    محل زندگی
    قم
    پست
    657

    نقل قول: BackSpace

    سلام

            private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
    {
    if ((e.KeyChar < '0' || e.KeyChar > '9') && (e.KeyChar != '\b'))
    {
    e.Handled = true;
    }
    else
    {
    e.Handled = false;
    }
    }

  8. #8
    کاربر دائمی آواتار M.YasPro
    تاریخ عضویت
    آبان 1386
    محل زندگی
    Kernel
    پست
    1,171

    نقل قول: BackSpace

    این کد برای MSDN هست .
    یعنی اینو از مثال های MSDN پیدا کردم

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

    نقل قول: BackSpace

    نقل قول نوشته شده توسط shima2006 مشاهده تاپیک
    این رو من نوشتم ولی پیغام خطا میده

    keypress هم که گفتید ، خب نمی دونم این 32 رو چطوری باید اضافه کنم!
    if (e.KeyCode = Keys.Back)
    {
    }این توی keydown جواب میده برای اینکه توی keyprees استفاده کنی
    به طور مثال

     private void textBox5_KeyPress(object sender, KeyPressEventArgs e)
    {
    if (e.KeyChar == 8)
    textBox6.Focus();
    }
    آخرین ویرایش به وسیله atryad : دوشنبه 30 شهریور 1388 در 23:57 عصر

  10. #10
    کاربر دائمی آواتار shima2006
    تاریخ عضویت
    مرداد 1385
    محل زندگی
    تهران
    سن
    39
    پست
    339

    نقل قول: BackSpace

    mahdi_7610 دقیقا مثل کدتون رو نوشتم ولی بازم BackSpace کار نمی کنه

  11. #11
    کاربر دائمی آواتار M.YasPro
    تاریخ عضویت
    آبان 1386
    محل زندگی
    Kernel
    پست
    1,171

    نقل قول: BackSpace

    سلام
    mahdi_7610 دقیقا مثل کدتون رو نوشتم ولی بازم BackSpace کار نمی کنه
    کدی که من دادم بهتون کار نمیکنه یا مشکلی داره ؟
    من خیلی وقته که ازش توی برنامه هام استفاده میکنم .

  12. #12
    کاربر دائمی آواتار shima2006
    تاریخ عضویت
    مرداد 1385
    محل زندگی
    تهران
    سن
    39
    پست
    339

    نقل قول: BackSpace

    میتونی توی خاصیتkeydown از کد زیر استفاده کنید

    کد:
    if (e.KeyCode = Keys.Back) { }
    این پیغام رو میده
    Property or indexer 'System.Windows.Forms.KeyEventArgs.KeyCode' cannot be assigned to-- it is read only
    و همینطور میگه
    cannot implicitly convert type 'System.window.forms.keys' to 'bool'

  13. #13
    کاربر دائمی آواتار M.YasPro
    تاریخ عضویت
    آبان 1386
    محل زندگی
    Kernel
    پست
    1,171

    نقل قول: BackSpace


    if(e.KeyCode == Keys.Back)

  14. #14
    کاربر دائمی
    تاریخ عضویت
    آبان 1386
    محل زندگی
    قم
    پست
    657

    نقل قول: BackSpace

    نقل قول نوشته شده توسط shima2006 مشاهده تاپیک
    mahdi_7610 دقیقا مثل کدتون رو نوشتم ولی بازم BackSpace کار نمی کنه
    سلام

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

    من کد شما را تغییر دادم تا BackSpace هم کار کنه .
    کد خودم هم کار می کنه .

    کد شما باید به این صورت باشه . اون قسمت پررنگ را به کد خودتون اضافه کنید.
            private void textBox2_KeyPress(object sender, KeyPressEventArgs e)
    {
    if (!(e.KeyChar >= '0' && e.KeyChar <= '9') && (e.KeyChar != '\b'))
    e.Handled = true;
    }


    یه نمونه هم گذاشتم
    فایل های ضمیمه فایل های ضمیمه

  15. #15
    کاربر دائمی آواتار shima2006
    تاریخ عضویت
    مرداد 1385
    محل زندگی
    تهران
    سن
    39
    پست
    339

    نقل قول: BackSpace

    از همه دوستان متشکرم
    همه روشهایی که گفتید کار می کنند
    فرم من تو یک قسمت دیگه مشکل داشت که باعث میشد تغییراتم اعمال نشن

  16. #16
    کاربر دائمی آواتار powerboy2988
    تاریخ عضویت
    تیر 1385
    محل زندگی
    تهران
    سن
    38
    پست
    1,301

    نقل قول: BackSpace

    از اين روش هم مي توني استفاده كني تو OnKeyPress


    if (!((e.KeyChar >= '0' && e.KeyChar <= '9') || e.KeyChar == 8))

  17. #17

    نقل قول: BackSpace


    privatevoid textBox1_KeyDown(object sender, KeyEventArgs e)
    {
    if (e.KeyValue == 13)
    {
    if (textBox1.Text == "")
    {
    if (MessageBox.Show("جعبه تلفن خالی است لطفا تلفن را وارد کنید", "خطا", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1) == DialogResult.OK)
    textBox1.Focus();
    }
    }
    while (e.KeyValue > 57 || e.KeyValue < 48)
    {
    while (e.KeyValue < 96 || e.KeyValue > 105)
    {
    if (e.KeyValue == 107 || e.KeyValue == 16 || e.KeyValue == 18
    || e.KeyValue == 8 || e.KeyValue == 37 || e.KeyValue == 38
    || e.KeyValue == 13 || e.KeyValue == 39 || e.KeyValue == 40 || e.KeyValue == 46 || e.KeyValue==45
    ) break;
    if (MessageBox.Show("درجعبه تلفن فقط اعداد0 تا 9 و+را میتوانید وارد کنید", "خطا", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1) == DialogResult.OK)
    {
    textBox1.Focus();
    textBox1.Text = null;
    }
    break;

    }
    break;
    }
    }



  18. #18

    نقل قول: BackSpace

    اگه بخوای فقط عدد 0-9 وارد بشه دیگه نیازی به این همه شرط و شروط نداره،در رویداد KeyPress مربوط به TextBox مورد نظر:


    private void txtphonenumber_KeyPress(object sender, KeyPressEventArgs e)
    {
    if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar))
    e.Handled = true;
    }

    اینجوری
    BackSpace هم کار میکنه
    آخرین ویرایش به وسیله pcweb99 : سه شنبه 03 تیر 1393 در 10:41 صبح

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

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

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