在VB.NET项目中,我正在尝试创建一个用户可以使用表单登录的登录页面。我使用一个数组来保存登录信息。但是,在验证时它很复杂,因此我不能简单地通过向数组添加项来添加用户。我需要在代码中添加一个else if
,所以这非常不方便。
代码如下:
Private Sub OK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK.Click
Dim UserNameAvailable As Integer = 0
Dim UsernameList(2) As String
Dim PasswordList(2) As String
UsernameList(0) = "jamiechoi"
PasswordList(0) = "198237645"
UsernameList(1) = "marcoyeung"
PasswordList(1) = "infotalkong"
UsernameList(2) = "user"
PasswordList(2) = "toolbox"
Dim InputUsername As String
InputUsername = UsernameTextBox.Text
Dim InputPassword As String
InputPassword = PasswordTextBox.Text
If InputUsername = UsernameList(0) Then
If InputPassword = PasswordList(0) Then
Me.Hide()
AdminArea.Show()
UserNameAvailable = 1
Else
MsgBox("Wrong Password!")
UserNameAvailable = 1
End If
ElseIf InputUsername = UsernameList(1) Then
If InputPassword = PasswordList(1) Then
Me.Hide()
AdminArea.Show()
UserNameAvailable = 1
Else
MsgBox("Wrong Password!")
UserNameAvailable = 1
End If
ElseIf InputUsername = UsernameList(2) Then
If InputPassword = PasswordList(2) Then
Me.Hide()
AdminArea.Show()
UserNameAvailable = 1
Else
MsgBox("Wrong Password!")
UserNameAvailable = 1
End If
End If
If UserNameAvailable = 0 Then
MsgBox("Wrong Username!")
End If
End Sub
我希望我可以使用for
循环来完成验证任务。我能做什么?
发布于 2014-04-13 11:45:51
很抱歉这么晚才回复(并且没有接受答案),因为答案的结果出乎意料。
这是我期望的解决方案:
(类似于)
For i As Integer = 1 To UsernameList.Length
If InputUsername = UsernameList(i) AndAlso InputPassword = PasswordList(i) Then
Me.Hide()
AdminArea.Show()
End If
Next
这就是我的解决方案。
发布于 2019-01-04 06:47:25
下面是我对代码的一点修改:
For i As Integer = 0 To UsernameList.Length - 1
If InputUsername = UsernameList(i) AndAlso InputPassword = PasswordList(i) Then
Me.Hide()
AdminArea.Show()
End If
Next
https://stackoverflow.com/questions/22451723
复制相似问题