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

📄 main.cpp

📁 AbsDataBase5.16 最新版
💻 CPP
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop

#include "Main.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "ABSMain"
#pragma resource "*.dfm"
TfrmMain *frmMain;

const AnsiString DataBaseFileName = "../../Data/Demos.abs";

//---------------------------------------------------------------------------
__fastcall TfrmMain::TfrmMain(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TfrmMain::FormCreate(TObject *Sender)
{
  dbDemos->Close();
  dbDemos->DatabaseFileName = ExtractFilePath(Application->ExeName) + DataBaseFileName;
  dbDemos->Open();
  FillTablesList();
}
//---------------------------------------------------------------------------
void __fastcall TfrmMain::btnDbFileSelectClick(TObject *Sender)
{
  if (odOpenDatabase->Execute())
    eDbFileName->Text = odOpenDatabase->FileName;
}
//---------------------------------------------------------------------------
void __fastcall TfrmMain::btCopyClick(TObject *Sender)
{
  if (lvTables->Selected != NULL)
    {
      ABSTable1->TableName = lvTables->Selected->Caption;
      if (rbCurrentDb->Checked)
        {
          ABSTable1->CopyTable(eTableName->Text,"","");
          FillTablesList();
        }
      else
        if (!cbEncrypted->Checked)
          ABSTable1->CopyTable(eTableName->Text, eDbFileName->Text,"");
        else
          ABSTable1->CopyTable(eTableName->Text, eDbFileName->Text, ePassword->Text);
      MessageDlg("Table copied.", mtInformation, TMsgDlgButtons()<<mbOK, 0);
    }
  else
    MessageDlg("Please select table to copy from the list", mtInformation, TMsgDlgButtons()<<mbOK, 0);
}
//---------------------------------------------------------------------------
void TfrmMain::FillTablesList()
{
TStringList *tables;
int i;

  tables = new TStringList();
  try
  {
    lvTables->Items->Clear();
    dbDemos->GetTablesList(tables);
    for (i=0; i <= tables->Count-1; i++)
      lvTables->Items->Add()->Caption = tables->Strings[i];
  }
  __finally
  {
    delete tables;
  }
}
//---------------------------------------------------------------------------

void __fastcall TfrmMain::lvTablesChange(TObject *Sender, TListItem *Item,
      TItemChange Change)
{
  if (lvTables->Selected != NULL)
    eTableName->Text = lvTables->Selected->Caption+"_copy";
}
//---------------------------------------------------------------------------

void __fastcall TfrmMain::rbCurrentDbClick(TObject *Sender)
{
  eDbFileName->Enabled = false;
  cbEncrypted->Enabled = false;
  ePassword->Enabled = false;
}
//---------------------------------------------------------------------------

void __fastcall TfrmMain::rbSelectedDbClick(TObject *Sender)
{
  eDbFileName->Enabled = true;
  cbEncrypted->Enabled = true;
  ePassword->Enabled = true;
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

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