DELPHI 用户登录窗口设计时,三次错误输入之后 还是提示用户密码错误 而不是预想的关闭窗口 咋回事呢?

beginedit1.Tag:=0;table1.Open;table1.SetKey;table1.FieldByName('用户名').AsString:=Edit1... begin
edit1.Tag:=0;
table1.Open;
table1.SetKey;
table1.FieldByName('用户名').AsString:=Edit1.Text;
if (table1.GotoKey) and (table1.FieldByName('密码').AsString=edit2.Text) then
begin
username:=edit1.Text;
password:=edit2.Text;
x1:=table1.FieldByName('管理权限').AsBoolean;
x2:=table1.FieldByName('操作权限').AsBoolean;
x3:=table1.FieldByName('查询权限').AsBoolean;
table1.Close;
close;
end
else
begin
table1.Close;
messagebox(0,'用户名或者密码错误,请确认您的输入信息!','错误提示',mb_ok+mb_iconhand);
edit1.Text:='';
edit2.Text:='';
edit1.SetFocus;
edit1.Tag:=edit1.Tag+1;

if edit1.tag=2 then
begin
messagebox(0,'您操作过于频繁,请查明您的登录信息后再试!','警告提示',mb_ok+mb_iconhand);
Form2.Close;
form1.Close;
end;
end;
end;
end.总是提示用户密码错误,三次之后还是同样的提示!还有个问题,为什么我的数据表理的用户密码不能正确调用到EDIT里?输入数据表里的数据 提示用户密码错误!
展开
 我来答
jeanler
2013-06-05 · 超过38用户采纳过TA的回答
知道小有建树答主
回答量:123
采纳率:0%
帮助的人:66万
展开全部
你的代码有逻辑错误 每次begin后面的edit1.Tag:=0;都将edit1.Tag重置为0 所以无论怎么都不会出现edit1.tag=2的情况, 要学会逐步调试代码, 这样的小问题调试一下就出来了.
更多追问追答
追问
顺便问问,为什么我输入了数据表里的用户名 密码 还是提示错误呢?代码哪个地方需要修改下?
追答
手头暂时没法测试问题所在, 不过你可以在
"if (table1.GotoKey) and (table1.FieldByName('密码').AsString=edit2.Text) then" 这行打 一个断点,

然后监控一下 table1.FieldByName('用户名').AsString 和 table1.FieldByName('密码').AsString 看看这两个属性的值是多少 就知道问题出在哪里了
来自:求助得到的回答
金山毒霸
2024-10-31 广告
大部分系统错误,是因为某些DLL文件丢失造成的,比如未安装DirectX9或DirectX 9.0组件已损坏、缺少Visual C ++库、未安装.net库。解决方法如下:一、 手动解决方法1、先确定电脑操作系统是多少位的,现在的电脑一般都... 点击进入详情页
本回答由金山毒霸提供
戢惠08L
2013-06-06 · 超过14用户采纳过TA的回答
知道答主
回答量:86
采纳率:16%
帮助的人:17.3万
展开全部
edit1.Tag:=0;每次赋值,都会把把修改的tag值冲掉,可以把这个放在界面初始化里面
追问
EN~!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
darlingks
2013-06-05 · TA获得超过222个赞
知道小有建树答主
回答量:638
采纳率:75%
帮助的人:171万
展开全部
。。。你用tag记录错误次数吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式