i:=0;
        if  edit1.Text = n  then
        begin
             while i<3 do
             begin
               if edit2.Text = p then
               begin
                    if d = '01' then
                    begin
                      form8.ShowModal ;
                      break;
                    end else
                    begin
                      form10.ShowModal ;
                      break;
                    end;
               end else
               begin
               showmessage('密码不正确');
               edit2.Clear ;
               edit2.SetFocus ;
               exit;
               i:=i+1;
               end;
             end;
             form4.Close ;
        end else
        begin
        showmessage('用户不存在');
        end;这段代码实现是的首先判断用户名的存在,然后判断密码的正确,3次密码不正确就关闭窗口,n 是用户名 ,p是密码,d是权限的控制。但是,我怎么也跳不出循环,密码输入3次后,还是在循环判断密码的正确性,代码里有错误吗?不过用户密码验证正确后,跳出窗口都是正确的(权限控制是正确的)。