我放在create事件中,好象不行?错误!?

解决方案 »

  1.   

    http://www.csdn.net/expert/topic/89/89579.shtm
      

  2.   

    如果在BDE Administrator中设置好你的用户名,那么TTable控件里的Params属性里写入
    Password=myPwd(myPwd就是你打开Access数据数据库的密码),否则就要多加一行UserName=myUserName(myUserName就是你打开Access数据库的用户名);
    当然你也可以在TTable连接数据库之前,用代码给TTable的Params属性赋值的;
    此外,LoginPrompt:= false;
    还有要将每个数据控件的databaseName设置为TTable控件的Name
      

  3.   

     with DMfrm.query1 do
      begin
        close;
        SQL.Clear;
        Sql.add('select * from 用户登录');
        Sql.add('where 用户名=:username');
        Sql.add('and 密码=:passWrd');
        ParamByName('username').asstring:=username.Text;
        ParamByName('passwrd').asstring:=passwrd.Text;
        Prepare;
        Open;
      end;
    if DMfrm.query1.RecordCount=0 then  //用户名与密码是否正确
    begin
        icount:=icount+1;
        if icount<3 then
        begin
           messagedlg('密码错误,一共只有三次机会!',mtwarning,[mbOK],0);
           passwrd.text:='';
           passwrd.SetFocus;
            modalResult:=mrCancel;
           exit;
        end
        else
           modalResult:=mrCancel;
    end
    else
       modalResult:=mrOk ;
    end;
      

  4.   

    上述办法好象不行,
    对不起,可能我没讲清楚,我的access表,并没有密码,
    我想去掉程序运行时出现的登陆窗口!
      

  5.   

    把你的DATABASE 控件的LoginPrompt属性设为false就可以了!
    可能第一次还要确认一下,直接点OK就行了,下一次就不会再有提示了,试试吧!
      

  6.   

    没有密码,用户名就是Admin,密码就空着,不想要登录窗口的话就将Database的LoginPrompt置为假。