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

Đề tài: Cách random text cho 1 mảng label

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

    Mặc định Cách random text cho 1 mảng label

    mình có 1 mảng label tạo thành hình bàn cờ, giờ mình muốn viết 1 hàm tạo 1 ký hiệu M đại diện cho quân mã trong 1 ô cờ bất kỳ bằng cách hàm random mà chưa biết làm sao?bạn nào biết giúp mình với.

    đây là hàm tạo bàn cờ của mình.
    Code:
    private void KhoiTao(Form fr)
            {
                Label[,] Oco = new Label[8, 8];
                int x = 60;
                int y = 100;
                int flag;
                for (int i = 0; i < 8; i++)
                {
                    if (i % 2 == 0)
                        flag = 0;
                    else
                        flag = 1;
                    for (int j = 0; j < 8; j++)
                    {
                        Oco[i, j] = new Label();
                        Oco[i, j].Location = new Point(x, y); 
                        Oco[i, j].Size = new Size(70, 70);
                        if (flag == 0)
                        {
                            Oco[i, j].BackColor = Color.Red;
                            flag = 1;
                        }
                        else
                        {
                            Oco[i, j].BackColor = Color.Black;
                            flag = 0;
                        }
                        x += 70;  
                        fr.Controls.Add(Oco[i, j]);
                    }
                    y += 70;       
                    x = 60;        
                }
            }

  2. #2
    Ngày gia nhập
    03 2009
    Bài viết
    149

    here:
    Visual C# Code:
    1. public String generateRandomString(int length) {
    2.     //Initiate objects & vars    Random random = new Random();
    3.     String randomString = "";
    4.     int randNumber;
    5.  
    6.     //Loop ‘length’ times to generate a random number or character
    7.     for (int i = 0; i < length; i++)            {
    8.         if (random.Next(1, 3) == 1)
    9.              randNumber = random.Next(97, 123); //char {a-z}
    10.         else
    11.              randNumber = random.Next(48, 58); //int {0-9}
    12.  
    13.         //append random char or digit to random string
    14.         randomString = randomString + (char)randNumber;
    15.     }
    16.     //return the random string
    17.     return randomString;
    18. }
    Sharing for success!

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

    random thì mình random đc... nhưng mình không biết cách viết 1 hàm khác để lấy thông tin các label trong hàm KhoiTao để mình gán text vào....mình mới học nên cái vụ chia nhỏ hàm mình chẳng biết gì hết...ai biết chỉ mình với...hjx

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

    Label của bạn là cục bộ trong phương thức khởi tạo nên không thể truy xuất từ những phương thức khác. Có nhiều các làm nhưng đơn giản nhất là bạn khai báo nó bên ngoài phương thức và trong cùng lớp, khi đó các phương thức khác sẽ truy xuất được thôi. Không biết có đúng ý bạn không

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

    Trích dẫn Nguyên bản được gửi bởi cuongdoannhat Xem bài viết
    Label của bạn là cục bộ trong phương thức khởi tạo nên không thể truy xuất từ những phương thức khác. Có nhiều các làm nhưng đơn giản nhất là bạn khai báo nó bên ngoài phương thức và trong cùng lớp, khi đó các phương thức khác sẽ truy xuất được thôi. Không biết có đúng ý bạn không
    mình cũng biết thế... nhưng không biết khai báo sao hết...

    đã thử public hàm KhoiTao, khai báo public mảng label nhưng vẫn không đc....phải làm như thế nào mới đc bạn nhĩ?
    Đã được chỉnh sửa lần cuối bởi Chicken2 : 10-11-2011 lúc 12:13 PM.

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

    Mặc định Cách random text cho 1 mảng label

    Thế này nhé:
    Code:
            Label[,] Oco;
    
            private void KhoiTao(Form fr)
            {
                Oco = new Label[8, 8];
                for (int i = 0; i < 8; i++)
                {
                    for (int j = 0; j < 8; j++)
                    {
                        Oco[i,j] = new Label();
                        fr.Controls.Add(Oco[i, j]);
                    }
                }
            }
    
            private void AccessLabel()
            {
                for (int i = 0; i < 8; i++)
                {
                    for (int j = 0; j < 8; j++)
                    {
                        string s = Oco[i, j].Text;
                    }
                }
            }
    Nếu thật sự bạn không nắm được điều này, bạn nên đọc lại lý thuyết C#. Điều này rất cơ bản

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

    Trích dẫn Nguyên bản được gửi bởi cuongdoannhat Xem bài viết
    Thế này nhé:
    Code:
            Label[,] Oco;
    
            private void KhoiTao(Form fr)
            {
                Oco = new Label[8, 8];
                for (int i = 0; i < 8; i++)
                {
                    for (int j = 0; j < 8; j++)
                    {
                        Oco[i,j] = new Label();
                        fr.Controls.Add(Oco[i, j]);
                    }
                }
            }
    
            private void AccessLabel()
            {
                for (int i = 0; i < 8; i++)
                {
                    for (int j = 0; j < 8; j++)
                    {
                        string s = Oco[i, j].Text;
                    }
                }
            }
    Nếu thật sự bạn không nắm được điều này, bạn nên đọc lại lý thuyết C#. Điều này rất cơ bản

    hị hị...xin lỗi bạn do quáng gà nên code nhầm vào 1 bt khác nên khi click nó ko chịu chạy...
    ngại quá..

    sẳn cho mình hỏi luôn,..nếu hàm khởi tạo và cái hàm gán text của mình ở 2 class khác nhau thì mình phải làm thế nào bạn nhĩ?... thực sự thì mình còn gà lắm...
    Đã được chỉnh sửa lần cuối bởi Chicken2 : 10-11-2011 lúc 01:43 PM.

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

    Hì hì, cái này cũng khó nói, bạn cho code lên thì giúp bạn thôi, chứ nói như vậy thì không biết bắt đầu từ đâu bởi vì có rất nhiều trường hợp để làm điều bạn muốn và phụ thuộc bạn khai báo class và method như thế nào

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

    đơn giản vầy thôi

    Code:
    class Banco
    {
         label[,] Oco = new label[8,8];
         private void KhoiTao()
         {
                   //code như trêm
                    for (int j = 0; j < 8; j++)
                    {
                        Oco[i, j] = new Label();
                        Oco[i, j].Location = new Point(x, y); 
                        Oco[i, j].Size = new Size(70, 70);
                        if (flag == 0)
                        {
                            Oco[i, j].BackColor = Color.Red;
                            flag = 1;
                        }
                        else
                        {
                            Oco[i, j].BackColor = Color.Black;
                            flag = 0;
                        }
                        x += 70;  
                        fr.Controls.Add(Oco[i, j]);
                    }
                    y += 70;       
                    x = 60;        
                }
         }
    }
    
    class TrangTri
    {
         private void DanhSoOco()
         {
                // trong nay lam sao de duyet dc mang label tren de danh so dc tat cac cac
                // label ở trên
         }
    }

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

  1. Game random 4 field trong csdl lên 4 label ?
    Gửi bởi langtu4t trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 5
    Bài viết cuối: 14-09-2011, 08:39 AM
  2. Lệnh Label.Text dù được đặt trước nhưng vẫn thực hiện sau cùng
    Gửi bởi thitgaluoc trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 9
    Bài viết cuối: 04-09-2011, 11:47 PM
  3. Lấy giá trị của label(label.Text) trong datalist
    Gửi bởi nhatnghe_thuong trong diễn đàn Thắc mắc lập trình ASP.NET
    Trả lời: 7
    Bài viết cuối: 16-02-2011, 04:48 PM
  4. random label trong lập trình C# thế nào nhỉ ??????
    Gửi bởi tan_hoa_2322 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 3
    Bài viết cuối: 25-11-2010, 12:59 AM
  5. Random TEXT giữa các Textbox ?
    Gửi bởi thuan199 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 3
    Bài viết cuối: 18-11-2010, 10:03 AM

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