Truyền biến số vào số thứ tự của Button và Textbox trong VB.Net (2 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

ngoclinh28061991

Thành viên mới
Tham gia
24/9/13
Bài viết
31
Được thích
1
Mình có một Form gồm có nhiều nút lệnh Button và Textbox nên được đánh số thứ tự lần lượt là Button1, Button2, Button3... và Textbox1, Textbox2, Textbox3...Khi mình muốn thay thế các số thứ tự 1,2,3 bằng một biến đếm thì viết như thế nào?
Ví dụ:
If My.Computer.Network.Ping(TextBox1.Text) Then
Button1.BackColor = Color.LimeGreen)
Button1.Text = "!"
Else
Button1.BackColor = Color.Red
Button1.Text = "?"
End If
Mình muốn thay thế biến i vào số 1 của Textbox1 và Button1 thành là Textbox(i) và Button(i) thì trong cửa số lập trình phải viết thế nào cho đúng?
Xin cảm ơn ạ!
 
Bạn tham khảo 2 đoạn code sau xem có áp dụng được không:


Private Sub CommandButton1_Click()
Dim MyCtr, i
MyCtr = Array(TextBox1, TextBox2, TextBox3, TextBox4)
For i = 0 To 3
MsgBox MyCtr(i).Name
Next

End Sub
'---------------------------------------------------
Private Sub CommandButton2_Click()
Dim MyCtr(3), i
For i = 1 To 4
Set MyCtr(i - 1) = Me.Controls("Textbox" & i)
Next
For i = 1 To 4
MsgBox MyCtr(i - 1).Name
Next
End Sub
 
Bạn tham khảo 2 đoạn code sau xem có áp dụng được không:


Private Sub CommandButton1_Click()
Dim MyCtr, i
MyCtr = Array(TextBox1, TextBox2, TextBox3, TextBox4)
For i = 0 To 3
MsgBox MyCtr(i).Name
Next

End Sub
'---------------------------------------------------
Private Sub CommandButton2_Click()
Dim MyCtr(3), i
For i = 1 To 4
Set MyCtr(i - 1) = Me.Controls("Textbox" & i)
Next
For i = 1 To 4
MsgBox MyCtr(i - 1).Name
Next
End Sub

Người ta hỏi là .NET bác ạ.
 
Bạn tham khảo 2 đoạn code sau xem có áp dụng được không:


Private Sub CommandButton1_Click()
Dim MyCtr, i
MyCtr = Array(TextBox1, TextBox2, TextBox3, TextBox4)
For i = 0 To 3
MsgBox MyCtr(i).Name
Next

End Sub
'---------------------------------------------------
Private Sub CommandButton2_Click()
Dim MyCtr(3), i
For i = 1 To 4
Set MyCtr(i - 1) = Me.Controls("Textbox" & i)
Next
For i = 1 To 4
MsgBox MyCtr(i - 1).Name
Next
End Sub

Nếu em có 50 Button và 50 Textbox thì phải khai báo 2 mảng gồm 50 phần tử sao ạ?
 
Thực sự mình chưa học VB.NET nên cũng không biết, nhưng nếu đã trong môi trường VB trước đây thì có 1 lợi thế hơn VBA là tạo mảng đối tượng trên form và mình nghĩ nó đúng với yêu cầu của bạn.
Còn trong VBA thì nhiều tính năng không được tích hợp đầy đủ và ta phải đánh du kích thôi. Nếu có đến hàng trăm cái Textbox cần đưa vào mảng thì ta không thể khai báo bằng hàm như vậy được mà phải dùng Code để đưa vào như ví dụ 2 đó (Thậm chí trường hợp không xác định đối tượng ta có thể dùng tiền tố của tên để xác định đưa vào mảng hoặc dùng Tag của đối tượng để nhận diện)
 
Dim txtBx As TextBox = Ctype(Me.Controls("TextBox" & i), TextBox)
Dim bttn As Button = Ctype(Me.Controls("Button" & i), Button)
 
Web KT

Bài viết mới nhất

Back
Top Bottom