main.cpp

来自「AbsDataBase5.16 最新版」· C++ 代码 · 共 112 行

CPP
112
字号
//---------------------------------------------------------------------------
#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->DatabaseFileName = ExtractFilePath(Application->ExeName) + DataBaseFileName;
  dbDemos->Open();
  tVenues->Open();
}
//---------------------------------------------------------------------------

void __fastcall TfrmMain::btLoadMemoClick(TObject *Sender)
{
TFileStream *FileStream;
TStream *BlobStream;

 if (odBlob->Execute())
   {
     tVenues->Edit();
     try
     {
       BlobStream = tVenues->CreateBlobStream(tVenues->FieldByName("Remarks"),bmWrite);
       FileStream = new TFileStream(odBlob->FileName,fmOpenRead + fmShareDenyNone);
       BlobStream->CopyFrom(FileStream,FileStream->Size);
       delete FileStream;
       delete BlobStream;
       tVenues->Post();
     }
     catch(...)
     {
       tVenues->Cancel();
     }
   }
}
//---------------------------------------------------------------------------

void __fastcall TfrmMain::btSaveMemoClick(TObject *Sender)
{
TFileStream *FileStream;
TStream *BlobStream;

  if (sdBlob->Execute())
    {
      FileStream = new TFileStream(sdBlob->FileName,fmCreate);
      BlobStream = tVenues->CreateBlobStream(tVenues->FieldByName("Remarks"),bmRead);
      FileStream->CopyFrom(BlobStream,BlobStream->Size);
      delete BlobStream;
      delete FileStream;
    }
}
//---------------------------------------------------------------------------

void __fastcall TfrmMain::btLoadImageClick(TObject *Sender)
{
TFileStream *FileStream;
TStream *BlobStream;

  if (sdBlob->Execute())
    {
     tVenues->Edit();
     try
     {
       BlobStream = tVenues->CreateBlobStream(tVenues->FieldByName("Venue_Map"),bmWrite);
       FileStream = new TFileStream(odBlob->FileName,fmOpenRead + fmShareDenyNone);
       BlobStream->CopyFrom(FileStream,FileStream->Size);
       delete FileStream;
       delete BlobStream;
       tVenues->Post();
     }
     catch(...)
     {
       tVenues->Cancel();
       throw;
     }
   }
}
//---------------------------------------------------------------------------

void __fastcall TfrmMain::btSaveImageClick(TObject *Sender)
{
TFileStream *FileStream;
TStream *BlobStream;

  if (sdBlob->Execute())
    {
      FileStream = new TFileStream(sdBlob->FileName,fmCreate);
      BlobStream = tVenues->CreateBlobStream(tVenues->FieldByName("Venue_Map"),bmRead);
      FileStream->CopyFrom(BlobStream,BlobStream->Size);
      delete BlobStream;
      delete FileStream;
    }
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

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