login.cpp

来自「一个以前收集的基于C/S架构的ERP客户端源代码」· C++ 代码 · 共 151 行

CPP
151
字号
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "Login.h"
#include <registry.hpp>
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
//---------------------------------------------------------------------------
__fastcall TfrmLogin::TfrmLogin(TComponent* Owner)
  : TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TfrmLogin::bbOKClick(TObject *Sender)
{
  if(etUserCode->Text.Trim()=="")
  {
    etUserCode->Text="";
    MessageBox(Handle,"请输入登录用户名.","错误信息",MB_ICONERROR+MB_OK);
    etUserCode->SetFocus();
    return;
  }
  if(cbAccBook->ItemIndex==-1)
  {
    MessageBox(Handle,"请选择登录账套号.","错误信息",MB_ICONERROR+MB_OK);
    cbAccBook->SetFocus();
    return;
  }
  Close();
  ModalResult=mrOk;  
}
//---------------------------------------------------------------------------

void __fastcall TfrmLogin::bbCancelClick(TObject *Sender)
{
  Close();
  ModalResult=mrCancel;
}
//---------------------------------------------------------------------------
void __fastcall TfrmLogin::FormShow(TObject *Sender)
{
  int index;
  etPassword->Text="";
  TRegistry *reg=new TRegistry;
  reg->RootKey=HKEY_LOCAL_MACHINE;
  if(!reg->OpenKey("SOFTWARE\\KSERP\\Client",true))
  {
    reg->WriteInteger("Rember",0);
    ckRember->Checked=false;
  }
  else
  {
    if(reg->ValueExists("Rember"))
      ckRember->Checked=reg->ReadInteger("Rember");
    else
    {
      reg->WriteInteger("Rember",0);
      ckRember->Checked=false;
    }
  }
  if(ckRember->Checked)
  {
    if(reg->ValueExists("UserCode"))
      etUserCode->Text=reg->ReadString("UserCode");
    else
    {
      reg->WriteString("UserCode","");
      etUserCode->Text="";
    }
    if(reg->ValueExists("AccBook"))
    {
      index=cbAccBook->Items->IndexOf(reg->ReadString("AccBook"));
      if(index==-1)
      {
        if(cbAccBook->Items->Count>0)
          cbAccBook->ItemIndex=0;
        else
          cbAccBook->ItemIndex=-1;
      }
      else
        cbAccBook->ItemIndex=index;
    }
    else
    {
      reg->WriteString("AccBook","");
      if(cbAccBook->Items->Count>0)
        cbAccBook->ItemIndex=0;
      else
        cbAccBook->ItemIndex=-1;
    }
  }
  else
  {
    etUserCode->Text="";
    if(cbAccBook->Items->Count>0)
      cbAccBook->ItemIndex=0;
    else
      cbAccBook->ItemIndex=-1;
    if(!reg->ValueExists("UserCode"))
      reg->WriteString("UserCode","");
    if(!reg->ValueExists("AccBook"))
      reg->WriteString("AccBook","");
  }
  reg->CloseKey();
  delete reg;
}
//---------------------------------------------------------------------------

void __fastcall TfrmLogin::FormClose(TObject *Sender,
      TCloseAction &Action)
{
  TRegistry *reg;
  if(ckRember->Checked)
  {
    reg=new TRegistry;
    reg->RootKey=HKEY_LOCAL_MACHINE;
    reg->OpenKey("SOFTWARE\\KSERP\\Client",true);
    reg->WriteInteger("Rember",ckRember->Checked?1:0);
    reg->WriteString("UserCode",etUserCode->Text);
    reg->WriteString("AccBook",cbAccBook->Text);
    reg->CloseKey();
    delete reg;
  }
}
//---------------------------------------------------------------------------
AnsiString __fastcall TfrmLogin::GetUserCode()
{
  return etUserCode->Text;
}
//---------------------------------------------------------------------------
AnsiString __fastcall TfrmLogin::GetPassword()
{
  return etPassword->Text;
}
//---------------------------------------------------------------------------
AnsiString __fastcall TfrmLogin::GetAccBook()
{
  return cbAccBook->Text;
}
//---------------------------------------------------------------------------
void __fastcall TfrmLogin::FormDeactivate(TObject *Sender)
{
  this->BringToFront();
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

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