Từ 1 tới 7 trên tổng số 7 kết quả

Đề tài: Nhập số âm trong TextBox

  1. #1
    Ngày gia nhập
    03 2008
    Bài viết
    57

    Cool Nhập số âm trong TextBox

    Mình mới nghiên cứu C# nên còn một số vấn đề chưa hiểu. Mong mọi người giúp cho.

    Mình có 1 TextBox . Mình đã xử lý được tình huống chỉ cho phép nhập số nguyên dương.
    Bây giờ mình muốn cho phép TextBox của mình có thể nhập cả số thực lẫn số âm . Mình tìm mãi mà không biết dùng hàm nào để xử lý.
    Anh em nào biết thì chỉ giúp mình nha.

  2. #2
    Ngày gia nhập
    07 2007
    Nơi ở
    Sơn La
    Bài viết
    133

    Trích dẫn Nguyên bản được gửi bởi thanhluan07 Xem bài viết
    Mình mới nghiên cứu C# nên còn một số vấn đề chưa hiểu. Mong mọi người giúp cho.

    Mình có 1 TextBox . Mình đã xử lý được tình huống chỉ cho phép nhập số nguyên dương.
    Bây giờ mình muốn cho phép TextBox của mình có thể nhập cả số thực lẫn số âm . Mình tìm mãi mà không biết dùng hàm nào để xử lý.
    Anh em nào biết thì chỉ giúp mình nha.
    Dùng Regex (regular expression ) rùi sử lý xem sao.
    Khi đã có regular expression rồi thì sử lý chắc cũng không phức tạp lắm ^^!
    Thân!
    Trao đổi kiến thức sẽ giúp ta tiếp cận nhanh với kiến thức.

  3. #3
    Ngày gia nhập
    07 2006
    Nơi ở
    Hanoi, Vietnam
    Bài viết
    2,750

    Với các tìm kiếm đơn giản thì khuyến cáo không nên sử dụng regular expression.

    Với bài này bạn chỉ cần đặt thêm cờ xử lý dấu chấm (.), và cờ xử lý dấu trừ (-). Nói chung là viết mấy dòng code là được bạn ah. Cố gắng học cách phân tích vấn đề chứ đừng chỉ có biết code không!
    Email: admin[@]congdongcviet.com | CC to: info[@]congdongcviet.com
    Phone: 0972 89 7667 (Office: 04 6329 2380)
    Yahoo & Skype: dreaminess_world (Vui lòng chỉ rõ mục đích ngay khi liên hệ, cảm ơn!)

    Một người nào đó coi thường ý thức kỷ luật cũng có nghĩa là người đó đã coi thường tương lai số phận của chính bản thân người đó. Những người coi thường ý thức kỷ luật sẽ không bao giờ có được sự thành công trong sự nghiệp!

  4. #4
    Ngày gia nhập
    10 2007
    Nơi ở
    Gameloft studio
    Bài viết
    175

    Trích dẫn Nguyên bản được gửi bởi Dreaminess Xem bài viết
    Với các tìm kiếm đơn giản thì khuyến cáo không nên sử dụng regular expression.

    Với bài này bạn chỉ cần đặt thêm cờ xử lý dấu chấm (.), và cờ xử lý dấu trừ (-). Nói chung là viết mấy dòng code là được bạn ah. Cố gắng học cách phân tích vấn đề chứ đừng chỉ có biết code không!
    ht nhớ không nhầm thì regular expression là để kiểm tra một chuỗi có phù hợp với cái mình đề ra hay không? (mới học mà quên, tức thiệt).
    Nhưng cho dù có kiểm tra ra thì việc chuyển nó vào biến số thực thì sao, coding hơi rối đó
    Không biết ghi gì luôn ...

  5. #5
    Ngày gia nhập
    07 2007
    Nơi ở
    Sơn La
    Bài viết
    133

    Trích dẫn Nguyên bản được gửi bởi Forlorn_hope Xem bài viết
    ht nhớ không nhầm thì regular expression là để kiểm tra một chuỗi có phù hợp với cái mình đề ra hay không? (mới học mà quên, tức thiệt).
    Nhưng cho dù có kiểm tra ra thì việc chuyển nó vào biến số thực thì sao, coding hơi rối đó
    Cái việc chuyển một chuyển nguyên(not dot ) sang số nguyên thì dùng int.Parse(_var);
    Nhưng mình không bít có cái chuyển sang float không?
    Tuy nhiên viết code cho nó cũng không phức tạp lắm
    1.Duyệt xem vị trí dot
    -> sau vị trí này thì cứ một ký tự lùi về phải thì Multi nó với 10Exp (- _count++)
    -> Trước vị trí này thì cứ một ký tự tiến về trái thì Multi nó với 10Exp(+ _count++)
    Hỏng bít có đúng không nhỉ ^^!
    Lát ciểm tra xem có kái hàm chuyển chuỗi sang float không đã ^^!
    Trao đổi kiến thức sẽ giúp ta tiếp cận nhanh với kiến thức.

  6. #6
    Ngày gia nhập
    10 2007
    Nơi ở
    Gameloft studio
    Bài viết
    175

    Mặc định Nhập số âm trong TextBox

    Trích dẫn Nguyên bản được gửi bởi NT_OnlyLove Xem bài viết
    Cái việc chuyển một chuyển nguyên(not dot ) sang số nguyên thì dùng int.Parse(_var);
    Nhưng mình không bít có cái chuyển sang float không?
    Tuy nhiên viết code cho nó cũng không phức tạp lắm


    Hỏng bít có đúng không nhỉ ^^!
    Lát ciểm tra xem có kái hàm chuyển chuỗi sang float không đã ^^!
    Bạn thử coding thử xem, hàm "int.Parse" thì không bàn gì.
    Không biết ghi gì luôn ...

  7. #7
    Ngày gia nhập
    07 2007
    Nơi ở
    Sơn La
    Bài viết
    133

    Mình vừa code xong.
    Tuy nhiên với số chữ số sau dấu phảy nhiều wa thì nó không có lấy.
    Cái này mình sẽ tìm lại xem giới hạn của từng kiểu giá trị sau.
    Nói chung thuật giải của mình là vậy
    Visual C# Code:
    1. using System;
    2. using System.Collections.Generic;
    3. using System.ComponentModel;
    4. using System.Data;
    5. using System.Drawing;
    6. using System.Linq;
    7. using System.Text;
    8. using System.Windows.Forms;
    9.  
    10. {
    11.     public partial class Form1 : Form
    12.     {
    13.         public Form1()
    14.         {
    15.             InitializeComponent();
    16.         }
    17.  
    18.         private void Form1_Load(object sender, EventArgs e)
    19.         {
    20.  
    21.         }
    22.  
    23.         private int EXP(int _param)
    24.         {
    25.             int _multi = 1;
    26.             for (int _index = 0; _index < _param; _index++)
    27.                 _multi *= 10;
    28.             return _multi;
    29.         }
    30.         //string 2 float
    31.         private float S2Float()
    32.         {
    33.             string _num=textBox1.Text;
    34.             int _len = _num.Length;
    35.             int _left, _mid, _right;
    36.             float _resualt;
    37.             _resualt = 0;
    38.             _left = 0;
    39.             _right = 0;
    40.             _mid = 0;
    41.  
    42.             for (int _index = 0; _index < _len;_index++ )
    43.             {                
    44.                 if (_num[_index] == '.')
    45.                 {
    46.                     _mid = _index+1;
    47.                     break;
    48.                 }
    49.                 if (_num[_index] != '.') _left++;
    50.             }
    51.             _right = _len - _left - 1;
    52.  
    53.             //left
    54.             for (int _index = 0; _index < _left; _index++)
    55.             {
    56.                 _resualt += (float)(int.Parse(_num[_index].ToString()) * EXP(_left - _index - 1));
    57.             }
    58.             //right
    59.             for (int _index = 0; _index < _right; _index++)
    60.             {
    61.                 _resualt += (float)(int.Parse(_num[_index + _mid].ToString())) / EXP(_index + 1);
    62.             }
    63.             return _resualt;
    64.         }
    65.  
    66.         private void button1_Click(object sender, EventArgs e)
    67.         {
    68.  
    69.             label1.Text = S2Float().ToString();
    70.         }
    71.     }
    72. }
    Trao đổi kiến thức sẽ giúp ta tiếp cận nhanh với kiến thức.

Các đề tài tương tự

  1. Chỉ cho phép nhập số vào textbox trong lập trình C#
    Gửi bởi neverland87 trong diễn đàn Tutorials và Thủ thuật lập trình C#, ASP.NET
    Trả lời: 60
    Bài viết cuối: 09-11-2014, 02:19 PM
  2. Game Cách nhập chữ vào textbox trong XNA
    Gửi bởi viet013 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 1
    Bài viết cuối: 11-04-2012, 07:22 PM
  3. Trả lời: 14
    Bài viết cuối: 10-10-2011, 03:58 PM
  4. Code cho ẩn kí tự khi nhập password vào textbox trong form đăng nhập
    Gửi bởi mrkiemhiep trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 6
    Bài viết cuối: 16-03-2011, 11:10 PM
  5. Chỉ cho nhập số vào textbox trong lập trình C#?
    Gửi bởi ngoctuqb trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 7
    Bài viết cuối: 24-11-2008, 09:40 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn