Trang 1 trên tổng số 2 12 Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 19 kết quả

Đề tài: Làm sao xác định vị trí của textBox trong mảng textBox ?

  1. #1
    Ngày gia nhập
    02 2011
    Bài viết
    16

    Mặc định Làm sao xác định vị trí của textBox trong mảng textBox ?

    em đang làm bài tập giải sudoku nên có tạo ra 1 mảng gồm 81 textBox, làm sao để xác định được con trỏ hiện đang ở textBox nào, đang cần rất gấp mong anh nào biết chỉ giùm em với.

  2. #2
    Ngày gia nhập
    08 2011
    Nơi ở
    Yên Bái- Hà Nội
    Bài viết
    961

    đào bới trong đống thuộc tính là có. Bạn duyệt toàn bộ 81 cái,xem cái nào có focused=true=> thì chính là nó.hehe
    Skype: mrfour.it - Yahoo:mrfour_it
    Gmail: mrfour.it@gmail.com
    Bạn muốn học lập trình? Bạn chưa có kiến thức cơ bản? Bạn muốn học từ cơ bản tới nâng cao?... Bạn muốn có source code để tham khảo? Muốn có người hỗ trợ khi học?....http://www.laptrinh123.com sẽ giúp bạn những điều đó!

  3. #3
    Ngày gia nhập
    02 2011
    Bài viết
    16

    Trích dẫn Nguyên bản được gửi bởi mrfour.it Xem bài viết
    đào bới trong đống thuộc tính là có. Bạn duyệt toàn bộ 81 cái,xem cái nào có focused=true=> thì chính là nó.hehe
    mình tạo mảng như vậy nè textBox[] text= new textBox[82]; không tìm ra được focus bạn làm ơn chỉ giùm với.
    Đã được chỉnh sửa lần cuối bởi cafesua501 : 04-05-2012 lúc 01:40 PM.

  4. #4
    Ngày gia nhập
    04 2011
    Bài viết
    9

    trong lúc bạn tạo mảng 81 textbox bạn gán Name luôn cho no Text1 , text 2, text3 theo i dùng vòng lặp
    rồi add cho nó sự kiên mouse hover chung như sau :
    Code:
    private void textBox1_MouseHover(object sender, EventArgs e)
            {
                TextBox tb = (TextBox)sender;
                MessageBox.Show(tb.Name);
            }
    bạn lấy được tên là lấy được thư tụ rồi hy vọng giúp được bạn ^^.

  5. #5
    Ngày gia nhập
    02 2011
    Bài viết
    16

    Trích dẫn Nguyên bản được gửi bởi asdasdasdsh Xem bài viết
    trong lúc bạn tạo mảng 81 textbox bạn gán Name luôn cho no Text1 , text 2, text3 theo i dùng vòng lặp
    rồi add cho nó sự kiên mouse hover chung như sau :
    Code:
    private void textBox1_MouseHover(object sender, EventArgs e)
            {
                TextBox tb = (TextBox)sender;
                MessageBox.Show(tb.Name);
            }
    bạn lấy được tên là lấy được thư tụ rồi hy vọng giúp được bạn ^^.
    cam ơn bạn nhiều lắm mình thử rồi mà chưa được, ở đây mình muốn tao mấy cái nút di cchuyen63 qua lại giữa mấy cái textBox, nên muốn xác định con trỏ đang nằm ở ô nào.

  6. #6
    Ngày gia nhập
    04 2011
    Bài viết
    9

    Mặc định Làm sao xác định vị trí của textBox trong mảng textBox ?

    Code:
            Button bt = new Button();
            public Form1()
            {
                for (int i = 0; i < 6; i++)
                {
                    TextBox tb = new TextBox();
                    this.Controls.Add(tb);
                    tb.Name = "text" + i;
                    tb.Location = new Point(0, 50*i);
                    tb.Width = 50;
                    tb.MouseHover+= textBox1_MouseHover;
                }
                InitializeComponent();
            }
    
            private void textBox1_MouseHover(object sender, EventArgs e)
            {
                TextBox tb = (TextBox)sender;
                bt.Text ="hoho";
                bt.Width = 50;
                tb.Controls.Add(bt);
            }
    bạn tạo nguyên 1 project mới và test thử xem đúng yêu cầu chưa ^^

  7. #7
    Ngày gia nhập
    02 2011
    Bài viết
    16

    Trích dẫn Nguyên bản được gửi bởi asdasdasdsh Xem bài viết
    Code:
            Button bt = new Button();
            public Form1()
            {
                for (int i = 0; i < 6; i++)
                {
                    TextBox tb = new TextBox();
                    this.Controls.Add(tb);
                    tb.Name = "text" + i;
                    tb.Location = new Point(0, 50*i);
                    tb.Width = 50;
                    tb.MouseHover+= textBox1_MouseHover;
                }
                InitializeComponent();
            }
    
            private void textBox1_MouseHover(object sender, EventArgs e)
            {
                TextBox tb = (TextBox)sender;
                bt.Text ="hoho";
                bt.Width = 50;
                tb.Controls.Add(bt);
            }
    bạn tạo nguyên 1 project mới và test thử xem đúng yêu cầu chưa ^^
    đây ý mình là vậy nè
    [IMG] Uploaded with ImageShack.us[/IMG]

    khi mình nhấn vào nút đó thì con trỏ sẽ nhãy trên mấy cái ô textBox

  8. #8
    Ngày gia nhập
    04 2011
    Bài viết
    9

    ý của bạn là con trỏ không phải là chuột phải không, Nếu vậy bạn làm như sau lúc khởi đàu bạn để biến a = 0 ; khi ấn trái phải thi cho a -1 hoặc a +1 ; khi ấn lên xuống cho a
    +9 hoặc trừ 9 , rồi dùng hàm sau
    Code:
    TextBox tb1 = this.Controls.Find("text" + a.ToString(), true).FirstOrDefault() as TextBox;
    chú ý lúc tạo text box bạn phải gán name giống ví dụ của tôi ở trên bây giờ bạn có tb1 bạn muốn làm gì thì làm ^^
    Đã được chỉnh sửa lần cuối bởi asdasdasdsh : 04-05-2012 lúc 09:30 PM.

  9. #9
    Ngày gia nhập
    02 2011
    Bài viết
    16

    Trích dẫn Nguyên bản được gửi bởi asdasdasdsh Xem bài viết
    ý của bạn là con trỏ không phải là chuột phải không, Nếu vậy bạn làm như sau lúc khởi đàu bạn để biến a = 0 ; khi ấn trái phải thi cho a -1 hoặc a +1 ; khi ấn lên xuống cho a
    +9 hoặc trừ 9 , rồi dùng hàm sau
    Code:
    TextBox tb1 = this.Controls.Find("text" + a.ToString(), true).FirstOrDefault() as TextBox;
    chú ý lúc tạo text box bạn phải gán name giống ví dụ của tôi ở trên bây giờ bạn có tb1 bạn muốn làm gì thì làm ^^
    có thể chi tiết síu hok bạn, cái này mình xử lý ở event button click.

  10. #10
    Ngày gia nhập
    04 2011
    Bài viết
    9

    lúc bạn tạo mảng textbox thì phải đặt tên cho text theo vòng lặp text1,text2,text3.... ví dụ
    Code:
     for (int i = 0; i < 6; i++)
                {
                    TextBox tb = new TextBox();
                    this.Controls.Add(tb);
                    tb.Name = "text" + i;
                    tb.Location = new Point(0, 50*i);
                    tb.Width = 50;
                    tb.MouseHover+= textBox1_MouseHover;
                }
    lúc đầu mặc định con trỏ sẽ ở vị trí đâu tiên tức là a = 0 khi bạn ấn nút sang phải thì a+1 ấn nụt sang trái thì a-1 ấn nút lên thì a-9 ấn nút xuông thì a+9 làm thế này để xác định con trỏ của bạn đang nằm o textbox thứ mấy trong mảng và xac định tên của textbox đó dưới dạng "text"+a.ToString() rồi bạn tiến hành tìm control đó khi đã biêt tên rồi bằng cách
    Code:
    TextBox tb1 = this.Controls.Find("text" + a.ToString(), true).FirstOrDefault() as TextBox;
    đến bước này tb1 chính là textbox mà con trỏ bạn đang đặt vào bạn muốn làm gì thì làm ^^ mình giải thích chi tiêt hết cỡ rồi ....

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

  1. [Hỏi] cách chuyển các phần tử của textBox này sang textBox khác theo thứ tự.
    Gửi bởi code_c trong diễn đàn Nhập môn lập trình C#, ASP.NET
    Trả lời: 10
    Bài viết cuối: 22-09-2012, 04:40 PM
  2. Trả lời: 14
    Bài viết cuối: 10-10-2011, 03:58 PM
  3. Thêm dữ liệu vào textbox không cần focus(textbox không có title )
    Gửi bởi prt_awm trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 7
    Bài viết cuối: 06-10-2011, 12:17 AM
  4. tạo 1 textbox trong girdview nhưng khi vào code sao không gọi tên textbox đó được
    Gửi bởi thuan trong diễn đàn Thắc mắc lập trình ASP.NET
    Trả lời: 6
    Bài viết cuối: 13-09-2011, 06:44 PM
  5. Khi đánh giá trị vào textbox thì sẽ load giá trị trong table ra textbox
    Gửi bởi suzuke169 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 1
    Bài viết cuối: 03-08-2011, 01:07 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