Rót dữ liệu vào mảng kí tự, lỗi ở đâu

Nơi trao đổi về các vấn đề trong lập trình Windows Forms, Console dùng cú pháp ngôn ngữ Visual Basic .NET và C#

Các điều hành viên: tungblt, vuathongtin

Đăng trả lời
Hình đại diện của thành viên
nhutwarn1998
Thành viên năng nổ
Thành viên năng nổ
Bài viết: 87
Ngày tham gia: Thứ 4 09/02/2011 9:48 pm
Has thanked: 1 time

Rót dữ liệu vào mảng kí tự, lỗi ở đâu

Gửi bài by nhutwarn1998 »

Em chả biết là như thế nào, nhưng khi load thì chỉ hiện được 1 số từ ngắn lên thôi, từ dài nó chìm mất. p/s: đang viết usercontrol nên có 1 số cái chưa xong.
  1. Public Class UserControl1
  2.     Dim s As Size = Me.Size
  3.     Dim col As Byte = 10
  4.     Dim row As Byte = 10
  5.     Dim list() As String = {"hesistate", "teddy", "polar", "bear", "a", "thor", "iron", "gundam"}
  6.     Dim table(10, 10) As Char
  7.     Dim WithEvents nut As New Button
  8.     Property word() As String()
  9.         Get
  10.             Return List
  11.         End Get
  12.         Set(ByVal value As String())
  13.             list = value
  14.         End Set
  15.     End Property
  16.     Property kickthuoc() As Size
  17.         Get
  18.             Return s
  19.         End Get
  20.         Set(ByVal value As Size)
  21.             s = value
  22.         End Set
  23.     End Property
  24.     Property so_dong() As Byte
  25.         Get
  26.             Return row
  27.         End Get
  28.         Set(ByVal value As Byte)
  29.             row = value
  30.         End Set
  31.     End Property
  32.     Property so_cot() As Byte
  33.         Get
  34.             Return col
  35.         End Get
  36.         Set(ByVal value As Byte)
  37.             col = value
  38.         End Set
  39.     End Property
  40.     Sub sukien()
  41.         Dim temp As Byte
  42.         For i As Byte = 0 To col - 1
  43.             For j As Byte = 0 To row - 1
  44.                 temp = i * 10 + j
  45.  
  46.             Next
  47.         Next
  48.     End Sub
  49.     Function scan(ByVal i As Integer, ByVal j As Integer, ByVal l As Integer) As Boolean
  50.         scan = True
  51.         If (i + l) > col Then
  52.             scan = False
  53.             Exit Function
  54.         End If
  55.  
  56.         For count As Integer = i To j + l
  57.             If table(count, i) <> Nothing Then
  58.                 scan = False
  59.                 Exit Function
  60.  
  61.             End If
  62.         Next
  63.     End Function
  64.     Sub setchar(ByVal x As Integer, ByVal y As Integer, ByVal chuoi As String)
  65.         Dim c As Integer = 0
  66.         For i As Integer = x To x + chuoi.Length - 1
  67.             table(i, y) = chuoi.Chars(c)
  68.             c = c + 1
  69.         Next
  70.     End Sub
  71.     Sub dua_vao_dong(ByVal chuoi As String)
  72.         Dim a As New Random
  73.         '   Dim t As Boolean
  74.         '  t = False
  75.         For j As Byte = 0 To row
  76.             For i As Byte = 0 To col
  77.                 If table(i, j) = Nothing Then
  78.                     If scan(i, i, chuoi.Length) Then
  79.                         setchar(i, j, chuoi)
  80.                         Exit Sub
  81.                     End If
  82.                 End If
  83.             Next
  84.         Next
  85.     End Sub
  86.     Private Sub UserControl1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  87.  
  88.         Dim con As New System.Windows.Forms.TableLayoutPanel
  89.         Me.SuspendLayout()
  90.         '
  91.         'con
  92.         '
  93.         con.CellBorderStyle = TableLayoutPanelCellBorderStyle.Single
  94.         nut.BackColor = Color.AliceBlue
  95.  
  96.         con.ColumnCount = col
  97.         For i As Byte = 1 To col
  98.             con.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, (100 / col)))
  99.  
  100.         Next
  101.         con.Location = New System.Drawing.Point(0, 0)
  102.         con.Name = "con"
  103.         con.Dock = DockStyle.Fill
  104.         con.RowCount = row
  105.         For j As Byte = 1 To row
  106.             con.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, (100 / row)))
  107.         Next
  108.         con.Size = Me.Size
  109.  
  110.         con.TabIndex = 0
  111.         'Dim o(100) As System.Windows.Forms.Button
  112.         For l As Byte = 0 To list.Count / 2
  113.             dua_vao_dong(list(l))
  114.         Next
  115.  
  116.         For i As Byte = 1 To row
  117.             For j As Byte = 1 To col
  118.                 Dim a As New SButton
  119.                 a.ButtonX1.Text = table(j, i)
  120.                 ' a.ButtonX1.fo()
  121.                 con.Controls.Add(a, i - 1, j - 1)
  122.                 AddHandler a.Click, AddressOf sukien
  123.  
  124.             Next
  125.         Next
  126.         con.Controls.Item(10).Text = "1'"
  127.         con.Refresh()
  128.         Me.Controls.Add(con)
  129.     End Sub
  130.  
  131. End Class
Đăng trả lời

Quay về