我遇到了一些问题,但我觉得很接近解决它。我有一个文本文件,用管道分隔用户名和密码:
;info.txt
user1|pass1
user2|pass2
user3|pass3
user4|pass4
user5|pass5
user6|pass6
user7|pass7
user8|pass8
user9|pass9
user10|pass10
以及代码:
Gui, -SysMenu
Gui, Add, Button, , Log in
getUsers()
Gui, Add, Button, , Exit
Gui, Show
Return
getUsers()
{
userList := ""
loop
{
FileReadLine, line, info.txt, %A_Index%
if ErrorLevel
Break
getUsers := StrSplit(line, "|")
userList .= getUsers[1] "|"
}
Gui, Add, ListBox, h100 vChoice, %userList%
}
ButtonLogin:
MsgBox, You chose %Choice%.
Gui, Submit, NoHide
Return
ButtonExit:
ExitApp
Return
我使用StrSplit()将User与Pass分开,然后分隔用户以使其成为ListBox的正确格式。一切都加载得很好,但当我从列表中选择一个并点击"登录时,"第一个没有给我任何结果,那么正确的结果会延迟一个。例如:
Click user1 > You chose .
Click user5 > you chose user1.
Click user3 > you chose user5.
此外,如果有人有更好的方法,请告诉我。
答案 0 :(得分:0)
ButtonLogin:
MsgBox, You chose %Choice%.
Gui, Submit, NoHide
Return
MsgBox正在发生 BEFORE 提交正在进行中。修正:
ButtonLogin:
Gui, Submit, NoHide
MsgBox, You chose %Choice%.
Return