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

نام تاپیک: Nomeric TextBox یعنی چه؟

  1. #1

    Question Nomeric TextBox یعنی چه؟

    سلام دوستان:
    من درمورد ساخت یک کلاس برای تکستباکس می گشتم و با کلاس از نوع Nomeric TextBox برخوردم اما کاربرد آن را نفهمیدم .
    من کدهای مربوطه را در این تاپیک قرار میدم و از شما دوستان می خوام اگر ممکن هست کمی در مورد آن توضیح دهید.

    public class NumericTextBox : TextBox
    {
    bool allowSpace = false;

    // Restricts the entry of characters to digits (including hex), the negative sign,
    // the decimal point, and editing keystrokes (backspace).
    protected override void OnKeyPress(KeyPressEventArgs e)
    {
    base.OnKeyPress(e);

    NumberFormatInfo numberFormatInfo = System.Globalization.CultureInfo.CurrentCulture.Nu mberFormat;
    string decimalSeparator = numberFormatInfo.NumberDecimalSeparator;
    string groupSeparator = numberFormatInfo.NumberGroupSeparator;
    string negativeSign = numberFormatInfo.NegativeSign;

    string keyInput = e.KeyChar.ToString();

    if (Char.IsDigit(e.KeyChar))
    {
    // Digits are OK
    }
    else if (keyInput.Equals(decimalSeparator) || keyInput.Equals(groupSeparator) ||
    keyInput.Equals(negativeSign))
    {
    // Decimal separator is OK
    }
    else if (e.KeyChar == '\b')
    {
    // Backspace key is OK
    }
    // else if ((ModifierKeys & (Keys.Control | Keys.Alt)) != 0)
    // {
    // // Let the edit control handle control and alt key combinations
    // }
    else if (this.allowSpace && e.KeyChar == ' ')
    {

    }
    else
    {
    // Swallow this invalid key and beep
    e.Handled = true;
    // MessageBeep();
    }
    }

    public int IntValue
    {
    get
    {
    return Int32.Parse(this.Text);
    }
    }

    public decimal DecimalValue
    {
    get
    {
    return Decimal.Parse(this.Text);
    }
    }

    public bool AllowSpace
    {
    set
    {
    this.allowSpace = value;
    }

    get
    {
    return this.allowSpace;
    }
    }
    }

    Code to use this Class in the form:


    // Create an instance of NumericTextBox.
    NumericTextBox numericTextBox1 = new NumericTextBox();
    numericTextBox1.Parent = this;

    //Draw the bounds of the NumericTextBox.
    numericTextBox1.Bounds = new Rectangle(5, 5, 150, 100);

    Add an InputPanel component to your form for user input into the NumericTextBox. For a Smartphone application, you can specify a numeric InputMode.


    با سپاس.
    Voice of Silence

  2. #2

    نقل قول: Nomeric TextBox یعنی چه؟

    این نوع TextBox فقط ارقام عددی و جداکننده‌های عددی (مثل نقطه برای ممیز، یا کاما برای جدا کردن سه تا سه تای ارقام) رو دریافت می‌کنه. یعنی هر کلید دیگه‌ای فشار بدید کنترل از اون صرف نظر می‌کنه و نشون نمی‌ده.

  3. #3

    نقل قول: Nomeric TextBox یعنی چه؟

    سلام
    این کلاس باعث ایجاد یه تکست باکس میشه که فقط عدد رو از ورودی میگیره.(کاراکترهای مجازش میشن اعداد، "."(نقطه اعشار) ، کلید backspace ، "-"(منفی)، " "(فاصله))

  4. #4

    نقل قول: Nomeric TextBox یعنی چه؟

    من این کلاس را ایجاد کردم اما پس چطور باید از آن استفاده کرد زیرا من یک تکسباکس گذاشتم و در هنگام اجرا ی برنامه مال من همه نوع کلید را قبل می کنه و صرفا به اعداد حساس نیست و حروف را نیز قبول می کنه .
    ممنون می شم اگه مرا در مورد چگونه استفاده کردن این کلاس راهنمایی کنید.
    من کد این کلاس را از MSDN گرفتم و به همین دلیل از آن درست استفاده نتونستم.
    با سپاس.

  5. #5

    نقل قول: Nomeric TextBox یعنی چه؟

    نقل قول نوشته شده توسط voice.of.silence مشاهده تاپیک
    من این کلاس را ایجاد کردم اما پس چطور باید از آن استفاده کرد زیرا من یک تکسباکس گذاشتم و در هنگام اجرا ی برنامه مال من همه نوع کلید را قبل می کنه و صرفا به اعداد حساس نیست و حروف را نیز قبول می کنه .
    ممنون می شم اگه مرا در مورد چگونه استفاده کردن این کلاس راهنمایی کنید.
    من کد این کلاس را از MSDN گرفتم و به همین دلیل از آن درست استفاده نتونستم.
    با سپاس.
    کدی که اینجا نوشته می‌شه بعد از اجرا تبدیل می‌شه به یه کمپونتت. البته بسته به اینکه نوع پروژه چی باشه dll یا داخل exe می‌افته.

    اون کمپوننت رو مثل سایر کنترل‌های ToolBox به اون قسمت اضافه کنید و هر جا احتیاج داشتید بندازید روی فرمتون.

  6. #6

    نقل قول: Nomeric TextBox یعنی چه؟

    دوست عزیز نحوه استفاده از این کلاس که درون خودش توضیح داده شده
        // Create an instance of NumericTextBox.
    NumericTextBox numericTextBox1 = new NumericTextBox();
    numericTextBox1.Parent = this;

    //Draw the bounds of the NumericTextBox.
    numericTextBox1.Bounds = new Rectangle(5, 5, 150, 100);

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

  7. #7

    نقل قول: Nomeric TextBox یعنی چه؟

    دوستان منظورم اینه که در هنگام اجرا ی برنامه تکسباکس روی فرم ایجاد می شه اما مشکل در اینجاست که حروف را هم قبول می کنه .
    همانطور که شما گفتید این تکسباکس برای اعداد طراحی شده .

  8. #8

    نقل قول: Nomeric TextBox یعنی چه؟

    ببینید شما به این شکل از این کد استفاده کنید.
    اول باید کلاس NumericTextBox رو ایجاد کنیم. یه کلاس جدید Add کن و کد بالا رو به این شکل استفاده کن.(با تغییرات جزیی در Usingها)


    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    using System.Globalization;

    namespace WindowsFormsApplication1
    {
    class NumericTextBox : TextBox
    {
    bool allowSpace = false;

    // Restricts the entry of characters to digits (including hex), the negative sign,
    // the decimal point, and editing keystrokes (backspace).
    protected override void OnKeyPress(KeyPressEventArgs e)
    {
    base.OnKeyPress(e);

    NumberFormatInfo numberFormatInfo = System.Globalization.CultureInfo.CurrentCulture.Nu mberFormat;
    string decimalSeparator = numberFormatInfo.NumberDecimalSeparator;
    string groupSeparator = numberFormatInfo.NumberGroupSeparator;
    string negativeSign = numberFormatInfo.NegativeSign;

    string keyInput = e.KeyChar.ToString();

    if (Char.IsDigit(e.KeyChar))
    {
    // Digits are OK
    }
    else if (keyInput.Equals(decimalSeparator) || keyInput.Equals(groupSeparator) ||
    keyInput.Equals(negativeSign))
    {
    // Decimal separator is OK
    }
    else if (e.KeyChar == '\b')
    {
    // Backspace key is OK
    }
    // else if ((ModifierKeys & (Keys.Control | Keys.Alt)) != 0)
    // {
    // // Let the edit control handle control and alt key combinations
    // }
    else if (this.allowSpace && e.KeyChar == ' ')
    {

    }
    else
    {
    // Swallow this invalid key and beep
    e.Handled = true;
    // MessageBeep();
    }
    }

    public int IntValue
    {
    get
    {
    return Int32.Parse(this.Text);
    }
    }

    public decimal DecimalValue
    {
    get
    {
    return Decimal.Parse(this.Text);
    }
    }

    public bool AllowSpace
    {
    set
    {
    this.allowSpace = value;
    }

    get
    {
    return this.allowSpace;
    }
    }
    }
    }

    حالا تو Form_Load فرمی که میخوای از این تکست باکس استفاده کنی به این شکل کد رو بنویس

    private void Form1_Load(object sender, EventArgs e)
    {
    NumericTextBox NumericTextBox1 = new NumericTextBox();

    NumericTextBox1.Parent = this;
    NumericTextBox1.Bounds = new Rectangle(5, 5, 150, 100);
    }

    موفق باشی

  9. #9

    نقل قول: Nomeric TextBox یعنی چه؟

    نقل قول نوشته شده توسط voice.of.silence مشاهده تاپیک
    دوستان منظورم اینه که در هنگام اجرا ی برنامه تکسباکس روی فرم ایجاد می شه اما مشکل در اینجاست که حروف را هم قبول می کنه .
    همانطور که شما گفتید این تکسباکس برای اعداد طراحی شده .
    امتحان کردم. خیلی خوب کار کرد. ضمیمه رو ببینید و بهمون بگید چی رو اشتباه زده بودید. قرار نیست هیچی به فرم اضافه کنید. خود کدها همه‌ی کارها رو می‌کنن.
    فایل های ضمیمه فایل های ضمیمه

  10. #10
    کاربر دائمی آواتار FastCode
    تاریخ عضویت
    تیر 1388
    محل زندگی
    /dev/null
    پست
    3,486

    نقل قول: Nomeric TextBox یعنی چه؟

    واقعاً جالبه که چقدر برای کسی که برای تاپیکش حتی یک جست و جو ساده هم نکرده وقت میزارید.

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

  11. #11

    نقل قول: Nomeric TextBox یعنی چه؟

    نقل قول نوشته شده توسط FastCode مشاهده تاپیک
    واقعاً جالبه که چقدر برای کسی که برای تاپیکش حتی یک جست و جو ساده هم نکرده وقت میزارید.

    اگر یک بار در گوگل سرچ میکرد میفهمید که Numeric رو اینطوری نمینویسن.
    نیت کمک بود. وگرنه گوگل هم لازم نبود. کد کلاسی که کپی کردن همون عبارت رو داره! چون منصفانه گفتن کد رو از MSDN کپی کردم سعی کردم کمکشون کنم. :)

  12. #12

    نقل قول: Nomeric TextBox یعنی چه؟

    نقل قول نوشته شده توسط مسعود اقدسی فام مشاهده تاپیک
    امتحان کردم. خیلی خوب کار کرد. ضمیمه رو ببینید و بهمون بگید چی رو اشتباه زده بودید. قرار نیست هیچی به فرم اضافه کنید. خود کدها همه‌ی کارها رو می‌کنن.
    ممنون دوست من اشکال من این بود که دو بار برای کلاس نام تعریف کرده بودم و زمانی که یکی از آنها را حذف کردم برنامه به خوبی کار کرد. با تشکر مجدد.
    Voice of Silence

  13. #13
    مدیر بخش آواتار مهرداد صفا
    تاریخ عضویت
    تیر 1391
    محل زندگی
    select Country,City From World where Country.Name=IRAN and City.Contains(حضرت معصومه(ع))
    پست
    1,499

    نقل قول: Nomeric TextBox یعنی چه؟

    نقل قول نوشته شده توسط FastCode مشاهده تاپیک
    واقعاً جالبه که چقدر برای کسی که برای تاپیکش حتی یک جست و جو ساده هم نکرده وقت میزارید.

    اگر یک بار در گوگل سرچ میکرد میفهمید که Numeric رو اینطوری نمینویسن.
    سلام
    ببخشید اینجا سایت برنامه نویس است یا کلاس املای زبان انگلیسی؟
    اشتباهات املایی در زمان تایپ هم ممکنه رخ بده. شما از کامپایلر C#‎‎‎ هم حساسترید.
    پس منه مبتدی که قصد دارم شروع به برنامه نویسی کنم و زبان هم نمیدانم کجا برم؟ اگر کسی به مشکل و سوال بر نمیخورد یا همه از سایتهای خارجی استفاده میکردند وجود این سایت چه ضرورتی داشت؟ هر کسی در هر سطحی ممکنه به مشکل بر بخوره و اینجا جای سوال و جوابه.
    نقل قول نوشته شده توسط voice.of.silence
    من این کلاس را ایجاد کردم اما پس چطور باید از آن استفاده کرد زیرا من یک تکسباکس گذاشتم و در هنگام اجرا ی برنامه مال من همه نوع کلید را قبل می کنه و صرفا به اعداد حساس نیست و حروف را نیز قبول می کنه
    دقت داشته باشید که تا زمانی که کلاس را به صورت کامپوننت به پروژه اضافه نکردید آن را در ToolBox ندارید و باید به روشی که Nima_kyan گفتند استفاده کنید.
    اگر باز هم مشکلتون حل نشد بگید تا یک نمونه کامل از همین کلاس با طریقه استفاده براتون قرار بدم.

  14. #14
    کاربر دائمی آواتار FastCode
    تاریخ عضویت
    تیر 1388
    محل زندگی
    /dev/null
    پست
    3,486

    نقل قول: Nomeric TextBox یعنی چه؟

    جالبتر هم شد.

    منظور من خطای این شخص نبود.منظور من این بود که این سوال واقعاً نیاز به پرسش نداره.
    چون ده ها بار توی همین سایت پرسیده شده.خود من هم تا حالا به این سوال جواب دادم.

    http://stackoverflow.com/questions/463299/
    https://barnamenevis.org/archive/index.php/t-350234.html
    https://barnamenevis.org/archive/index.php/t-17293.html
    https://barnamenevis.org/archive/index.php/t-155683.html
    https://barnamenevis.org/archive/index.php/t-8691.html

    توی این یکی استاد sinpin دعوا کرده:)
    https://barnamenevis.org/archive/index.php/t-92852.html

  15. #15

    نقل قول: Nomeric TextBox یعنی چه؟

    ممنونم از حسن نظرتان. دوست من این پست شما باعث شد که برایم این سوال ایجاد شود که چرا من نمی تونم این تکستباکس را در تولباکس نی بینم و فقط می توان از آن به صورت داینامیک استفاده کرد؟

  16. #16
    کاربر دائمی آواتار FastCode
    تاریخ عضویت
    تیر 1388
    محل زندگی
    /dev/null
    پست
    3,486

    نقل قول: Nomeric TextBox یعنی چه؟

    اگر به شکل UserControl به شکل تکی در یک فایل ایجاد کنید باید در Toolbox نمایش داده بشه.
    pubilc class MyControl: UserControl{}

تاپیک های مشابه

  1. DBIsam یعنی چه؟
    نوشته شده توسط nasr در بخش برنامه نویسی در Delphi
    پاسخ: 7
    آخرین پست: چهارشنبه 24 خرداد 1385, 11:26 صبح
  2. این COM+ assembly یعنی چه؟
    نوشته شده توسط javad3151 در بخش VB.NET
    پاسخ: 1
    آخرین پست: چهارشنبه 17 اسفند 1384, 07:16 صبح
  3. هر سرور برای خودش یک پورت مخصوص داره یعنی چه؟
    نوشته شده توسط zizi_zizi69 در بخش شبکه و Networking‌
    پاسخ: 6
    آخرین پست: پنج شنبه 19 آذر 1383, 12:48 عصر
  4. cross paltform یعنی چه؟
    نوشته شده توسط Looker در بخش ASP.NET Web Forms
    پاسخ: 1
    آخرین پست: شنبه 22 شهریور 1382, 14:41 عصر

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

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