⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 logonfrm.cpp

📁 醫院管理 還不錯 醫院管理 還不錯 醫院管理 還不錯
💻 CPP
字号:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "LogonFrm.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "BaseFrm"
#pragma resource "*.dfm"
TfrmLogon *frmLogon;

#include "MainDm.h"

#include "ConstUnt.h"
#include <IniFiles.hpp>
//---------------------------------------------------------------------------
__fastcall TfrmLogon::TfrmLogon(TComponent* Owner)
        : TfrmBase(Owner)
{}
//---------------------------------------------------------------------------
void __fastcall TfrmLogon::btnLogonClick(TObject *Sender)
{
    const char * pszWarning = "警告";
    const char * pszLogFail = "登陆失败,请检查您的登陆密码!";
    int Msg1WBtn = MB_OK | MB_ICONWARNING;

    //判断其用户的合法性

    //不合法退出
    int nIndex = cboLogUsr->ItemIndex;

    if (m_vect_LogonList[nIndex].strLogPwd == edtLogPwd->Text)
    {
        gLogonInf.m_strOptName = m_vect_LogonList[nIndex].strName;
        gLogonInf.m_strOptId = m_vect_LogonList[nIndex].strOptId;

        TADOQuery * qryEx = dmMain->qrySQLPlus;
        qryEx->Close();
        qryEx->SQL->Clear();
        qryEx->SQL->Add("select name,id from basicinf");
        qryEx->Open();

        gLogonInf.m_strStoreId = Trim(qryEx->FieldByName("id")->AsString);
        gLogonInf.m_strStoreName = Trim(qryEx->FieldByName("name")->AsString);
        gLogonInf.m_strPwd = edtLogPwd->Text;
        //关闭流
        qryEx->Close();
        ModalResult = mrOk;

        SaveUsrIndex();
    }
    else
    {
        MessageBox(Handle, pszLogFail, pszWarning, Msg1WBtn);
    }
}
//---------------------------------------------------------------------------





void __fastcall TfrmLogon::FormShow(TObject *Sender)
{
    m_vect_LogonList.clear();
    cboLogUsr->Clear();

    TADOQuery * qryEx = dmMain->qrySQLPlus;
    qryEx->Close();

    qryEx->SQL->Clear();

    qryEx->SQL->Add("select id,logusr,logpwd,name from optinf");
    qryEx->Open();
    while (!qryEx->Eof)
    {
        tagLogonInf infAdd;
        infAdd.strOptId = Trim(qryEx->Fields->Fields[0]->AsString);
        infAdd.strLogUsr = Trim(qryEx->Fields->Fields[1]->AsString);
        infAdd.strLogPwd = Trim(qryEx->Fields->Fields[2]->AsString);
        infAdd.strName = Trim(qryEx->Fields->Fields[3]->AsString);

        m_vect_LogonList.push_back(infAdd);

        cboLogUsr->Items->Add(infAdd.strLogUsr);

        qryEx->Next();
    }
    if (cboLogUsr->Items->Count > 0)
    {
        cboLogUsr->ItemIndex = 0;
    }
    qryEx->Close();

    LoadUsrIndex();

}
//---------------------------------------------------------------------------

//装载用户名称索引

void TfrmLogon::LoadUsrIndex()
{
    String strAppPath = ExtractFilePath(ParamStr(0));
    TIniFile * pIniLoad = new TIniFile(strAppPath + "syscfg.ini");
    int nUsrIndex = pIniLoad->ReadInteger("normal", "logusr", 0);
    if (nUsrIndex < cboLogUsr->Items->Count)
    {
        cboLogUsr->ItemIndex = nUsrIndex;
    }

    delete pIniLoad;
}

void TfrmLogon::SaveUsrIndex()
{
    String strAppPath = ExtractFilePath(ParamStr(0));

    TIniFile * pIniLoad = new TIniFile(strAppPath + "syscfg.ini");
    int nUsrIndex = cboLogUsr->ItemIndex;
    pIniLoad->WriteInteger("normal", "logusr", nUsrIndex);

    delete pIniLoad;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -