如何动态标注标签号
How to dynamically the label number
这是一个网球锦标赛模拟程序,我正在尝试制作一棵树。一切正常,但我有一个大问题。我无法与第一场比赛的获胜者一起进入下一阶段。因为我无法更改要写获奖者姓名的 "target" 标签。这是一个打印:
这就是我生成进入下一阶段的获胜者的方式,它确实有效。~
Public Sub Gerar_Vencedor(Atleta1, Atleta2)
Using con As New OleDb.OleDbConnection
con.ConnectionString = "Provider = Microsoft.ACE.OLEDB.12.0;" &
"Data Source = E:\dev\Ganso\BaseDados_ClubeTenis.accdb"
con.Close()
con.Open()
Dim busca = "Select Vencedor From Jogo Where idAtleta1 = '" & Atleta1 & "' and idAtleta2 = '" & Atleta2 & "'"
Dim cmd As OleDbCommand = New OleDbCommand(busca, con)
Dim dr As OleDbDataReader = cmd.ExecuteReader()
' A variável sql vai receber a string para fazer o select a base de dados
'Try
' é aberta ligação a Bdados
' declaração de um comando que vai executar a instrução sql na base de dados
' variável que vai receber os registos resultantes da instrução sql
' ciclo que vai percorrer todos os registos do comando anterior
While dr.Read()
Label9.Text = dr("Vencedor")
End While
con.Close()
End Using
End Sub
我的问题是 Label9.Text = dr("Vencedor")
因为每次我赢了,它都会转到 label9。
我的最后一个问题是:有没有动态改变标签而不用一遍又一遍地重复这个功能。
谢谢。
你能试试吗
Dim i As Integer = 9
While dr.Read()
If i < 15
DirectCast(Me.Controls("Label" & i), Label).Text = dr("Vencedor")
Else
End If
i = i + 1
End While
这是一个网球锦标赛模拟程序,我正在尝试制作一棵树。一切正常,但我有一个大问题。我无法与第一场比赛的获胜者一起进入下一阶段。因为我无法更改要写获奖者姓名的 "target" 标签。这是一个打印:
这就是我生成进入下一阶段的获胜者的方式,它确实有效。~
Public Sub Gerar_Vencedor(Atleta1, Atleta2)
Using con As New OleDb.OleDbConnection
con.ConnectionString = "Provider = Microsoft.ACE.OLEDB.12.0;" &
"Data Source = E:\dev\Ganso\BaseDados_ClubeTenis.accdb"
con.Close()
con.Open()
Dim busca = "Select Vencedor From Jogo Where idAtleta1 = '" & Atleta1 & "' and idAtleta2 = '" & Atleta2 & "'"
Dim cmd As OleDbCommand = New OleDbCommand(busca, con)
Dim dr As OleDbDataReader = cmd.ExecuteReader()
' A variável sql vai receber a string para fazer o select a base de dados
'Try
' é aberta ligação a Bdados
' declaração de um comando que vai executar a instrução sql na base de dados
' variável que vai receber os registos resultantes da instrução sql
' ciclo que vai percorrer todos os registos do comando anterior
While dr.Read()
Label9.Text = dr("Vencedor")
End While
con.Close()
End Using
End Sub
我的问题是 Label9.Text = dr("Vencedor")
因为每次我赢了,它都会转到 label9。
我的最后一个问题是:有没有动态改变标签而不用一遍又一遍地重复这个功能。
谢谢。
你能试试吗
Dim i As Integer = 9
While dr.Read()
If i < 15
DirectCast(Me.Controls("Label" & i), Label).Text = dr("Vencedor")
Else
End If
i = i + 1
End While