全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1063
推到 Plurk!
推到 Facebook!

實做登入 mdiform的登入的問題?

尚未結案
tahoo
一般會員


發表:22
回覆:19
積分:8
註冊:2003-05-13

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-04-11 10:34:00 IP:218.163.xxx.xxx 未訂閱
我參考了 http://delphi.ktop.com.tw/topic.php?topic_id=22091 製作登入程式,但我有每次登入失敗時,就不會再顯示出登入畫面了,如下程式碼,應該我有三次的登入機會才對,搞了好久,但還是弄不出來,可否有人遇到相同之問題,謝謝各位高手!! 程式碼如下: //在專案中程式 Application.Initialize; Application.CreateForm(TFrmMain, FrmMain); Application.CreateForm(TDM, DM); Application.CreateForm(TFrmReport, FrmReport); Application.CreateForm(TFrmRptEnter, FrmRptEnter); Application.CreateForm(TfrmLogin, frmLogin); if frmLogin.ShowModal <> mrOK then Application.Terminate; Application.Run; //登入按鈕下之程式 procedure TfrmLogin.bbtnLoginClick(Sender: TObject); begin with qrUser do begin gsSQL := 'select * from 領料人員 where 人員編號=''%s'' and 密碼=''%s'' '; gsSQL := Format(gsSQL, [LeftStr(CmbUserID.Text, 4), Trim(edtPassword.Text)]); close; SQL.Clear; sql.Add(gsSQL); open; if eof then begin ShowMessage('使用者代號或通行密碼錯誤,請重新輸入!'); inc(iLoginNumber); if iLoginNumber = 3 then begin ShowMessage('您進行系統身份確認程序錯誤,本系統將停止執行!'); ModalResult := mrNo; end; end else begin ModalResult := mrOk; end; end; end;; 突然想學Delphi的新手
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-04-12 21:57:20 IP:202.39.xxx.xxx 未訂閱
改成如下試試:
    var
  iLoginCount: integer;
begin
  Application.Initialize;
  Application.CreateForm(TFrmMain, FrmMain);
  Application.CreateForm(TDM, DM);
  Application.CreateForm(TFrmReport, FrmReport);
  Application.CreateForm(TFrmRptEnter, FrmRptEnter);
  Application.CreateForm(TfrmLogin, frmLogin);      iLoginCount := 0;
  frmLogin.ShowModal;
  while True do
    if frmLogin.ModalResult <> mrOK then
    begin
      Inc(iLoginCount);
      if iLoginCount = 3 then
      begin
        ShowMessage('您進行系統身份確認程序錯誤,本系統將停止執行!');
        Application.Terminate;
      end;
      frmLogin.ShowModal;
    end
    else
      Break;
  end;
  Application.Run;
//登入按鈕下之程式
procedure TfrmLogin.bbtnLoginClick(Sender: TObject);
begin
  with qrUser do
  begin
    gsSQL := 'select * from 領料人員 where 人員編號=''%s'' and 密碼=''%s'' ';
    gsSQL := Format(gsSQL, [LeftStr(CmbUserID.Text, 4), Trim(edtPassword.Text)]);
    Close;
    SQL.Clear;
    SQL.Add(gsSQL);
    Open;
    if Eof then
    begin
      ShowMessage('使用者代號或通行密碼錯誤,請重新輸入!');
      ModalResult := mrNo;
    end
    else
    begin
      ModalResult := mrOk;
    end;
  end;
end;;
-- 分擔可以輕省, 分享帶來喜樂!
系統時間:2024-09-11 18:34:58
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!