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

📄 cover.cpp

📁 Raize控件包的安装路径为D:Program Files(一定要安装到正确位置,否则代码不能运行),配置好C++bulider的数据库环境. 本代码为课程设计的报告,有相当多不完善地方,适合初学C
💻 CPP
字号:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "cover.h"
#include "hotelmanagement.h"
#include "datamodule.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm2 *Form2;
//---------------------------------------------------------------------------
__fastcall TForm2::TForm2(TComponent* Owner)
        : TForm(Owner)
{m_nTimes=0;
m_strStuName=""; 
}
//---------------------------------------------------------------------------


//---------------------------------------------------------------------------
void __fastcall TForm2::FormClose(TObject *Sender, TCloseAction &Action)
{
Action=caFree;        
}
//---------------------------------------------------------------------------






void __fastcall TForm2::BitBtn2Click(TObject *Sender)
{
this->Close();


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


void __fastcall TForm2::BitBtn1Click(TObject *Sender)
{
 m_nTimes++;
//首先根据选择的是教务还是学生,确定查询的范围
 if(ComboBox1->Text=="经理")
 {DataModule1->workerQuery->SQL->Clear();
  DataModule1->workerQuery->Close();
  AnsiString queryString="Select * from worker ";
  queryString+="where (workername=";
  queryString+="'";
  queryString+=ComboBox2->Text;
  queryString+="'";
  queryString+=")";
  queryString+=" and (workertype='经理')";
  try
   {DataModule1->workerQuery->SQL->Add(queryString);
    DataModule1->workerQuery->ExecSQL();
    DataModule1->workerQuery->Active=true;
   }
  catch(EDBEngineError &E)
   {MessageBox(this,"不能查询数据表","错误",MB_OK);
    ModalResult=mrAbort;
    return;
   }
 if(DataModule1->workerQuery->RecordCount==0)
   {//如果查询记录为0,表示没有用户名
     if(m_nTimes==3)
     {MessageBox(NULL,"您不是合法用户!","登录数据库错误", MB_OK);
      ModalResult=mrAbort;
      Close();
     }
     else
    {MessageBox(NULL,"用户名不存在,请重新输入","登录数据库错误",MB_OK);
     ComboBox2->SetFocus();
     Edit1->Text="";
     ModalResult=mrNone;
    }
  }
 else
  {//用户名存在,则判断口令是否正确
   queryString+=" and workerpassword=";
   queryString+="'";
   queryString+=Edit1->Text;
   queryString+="'";
   try
   {DataModule1->workerQuery->SQL->Clear();
    DataModule1->workerQuery->SQL->Add(queryString);
    DataModule1->workerQuery->ExecSQL();
    DataModule1->workerQuery->Active=true;
   }
    catch(EDBEngineError &E)
   {MessageBox(this,"不能查询数据表","错误",MB_OK);
    ModalResult=mrAbort;
    return;
   }
 if(DataModule1->workerQuery->RecordCount==0)
   {//如果查询记录为0,表示口令不正确
     if(m_nTimes==3)
     {MessageBox(NULL,"您不是合法用户!","登录数据库错误", MB_OK);
      ModalResult=mrAbort;
      Close();
     }
     else
    {MessageBox(NULL,"口令不正确,请重新输入","登录数据库错误",MB_OK);
     Edit1->Text="";
     ModalResult=mrNone;
     }
     DataModule1->workerQuery->Close();
    }
     else
      {DataModule1->workerQuery->Close();
       ModalResult=mrOk;
       Form1=new TForm1(Application);//显示窗体
       Form1->ShowModal();
       Form1->Update();
      }
      }
 }
 else
 {DataModule1->workerQuery->SQL->Clear();
  DataModule1->workerQuery->Close();
  AnsiString queryString="Select * from worker ";
  queryString+="where (workername=";
  queryString+="'";
  queryString+=ComboBox2->Text;
  queryString+="'";
  queryString+=")";
  queryString+=" and (workertype='前台工作人员')";
  try
   {DataModule1->workerQuery->SQL->Add(queryString);
    DataModule1->workerQuery->ExecSQL();
    DataModule1->workerQuery->Active=true;
   }
  catch(EDBEngineError &E)
   {MessageBox(this,"不能查询数据表","错误",MB_OK);
    ModalResult=mrAbort;
    return;
   }
 if(DataModule1->workerQuery->RecordCount==0)
   {//如果查询记录为0,表示没有用户名
     if(m_nTimes==3)
     {MessageBox(NULL,"您不是合法用户!","登录数据库错误", MB_OK);
      ModalResult=mrAbort;
      Close();
     }
     else
    {MessageBox(NULL,"用户名不存在,请重新输入","登录数据库错误",MB_OK);
     ComboBox2->SetFocus();
     Edit1->Text="";
     ModalResult=mrNone;
    }
  }
 else
  {//用户名存在,则判断口令是否正确
   queryString+=" and workerpassword=";
   queryString+="'";
   queryString+=Edit1->Text;
   queryString+="'";
   try
   {DataModule1->workerQuery->SQL->Clear();
    DataModule1->workerQuery->SQL->Add(queryString);
    DataModule1->workerQuery->ExecSQL();
    DataModule1->workerQuery->Active=true;
   }
    catch(EDBEngineError &E)
   {MessageBox(this,"不能查询数据表","错误",MB_OK);
    ModalResult=mrAbort;
    return;
   }
 if(DataModule1->workerQuery->RecordCount==0)
   {//如果查询记录为0,表示口令不正确
     if(m_nTimes==3)
     {MessageBox(NULL,"您不是合法用户!","登录数据库错误", MB_OK);
      ModalResult=mrAbort;
      Close();
     }
     else
    {MessageBox(NULL,"口令不正确,请重新输入","登录数据库错误",MB_OK);
     Edit1->Text="";
     ModalResult=mrNone;
     }
     DataModule1->workerQuery->Close();
    }
     else
      {DataModule1->workerQuery->Close();
       ModalResult=mrOk;
       Form1=new TForm1(Application);//显示窗体
       Form1->Show();
       Form1->Update();

      }
      }
 }

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





void __fastcall TForm2::BitBtn1KeyDown(TObject *Sender, WORD &Key,
      TShiftState Shift)
{
  if(Key== VK_RETURN )
 {BitBtn1Click(Sender);
 }        
}
//---------------------------------------------------------------------------

void __fastcall TForm2::Edit1KeyDown(TObject *Sender, WORD &Key,
      TShiftState Shift)
{
 if(Key== VK_RETURN )
 {BitBtn1Click(Sender);
 }               
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

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