📄 clientc.cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "clientc.h"
#include "clientdm.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "DBImageEn"
#pragma link "ieview"
#pragma link "ImageEnView"
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::dktx_bClick(TObject *Sender)
{
if(dig->Execute())
{
Image1->Picture->LoadFromFile(dig->FileName);
// imagedc->Bitmap->LoadFromFile(dig->FileName);
// DBImage1->Picture->Bitmap->LoadFromFile(dig->FileName);
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::imagedcImageChange(TObject *Sender)
{
Image1->Picture->Bitmap = imagedc->Bitmap;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
TStream * pBlobStream;
AnsiString sql;
CustomerData->client_dset_in->Params->Clear();
CustomerData->client_dset_in->Close();
CustomerData->client_dset_in->CommandText="Insert into lx2 values('"+Edit1->Text+"',empty_blob())";
CustomerData->client_dset_in->Execute();
CustomerData->client_dset_in->Close();
CustomerData->client_dset_in->CommandText="";
CustomerData->client_dset_in->CommandText="select id,image from lx2 where id='"+Edit1->Text+"'";
CustomerData->client_dset_in->Open();
CustomerData->client_dset_in->Edit();
CustomerData->client_dset_in->FieldByName("image")->Assign(Image1->Picture);
pBlobStream = CustomerData->client_dset_in->CreateBlobStream(CustomerData->client_dset_in->FieldByName("image"), bmReadWrite);
pBlobStream->Seek(0,soFromBeginning);
Image1->Picture->Graphic->SaveToStream(pBlobStream);
CustomerData->client_dset_in->Post() ;
CustomerData->client_dset_in->ApplyUpdates(-1);
pBlobStream->Free();
CustomerData->client_dset_in->Close();
ShowMessage("ok");
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
DBGrid1->DataSource=Form1->client_ds;
imagedc->DataSource=Form1->client_ds;
// DBNavigator1->DataSource=Form1->client_ds;
// DBImage1->DataSource=client_ds;
// DBImage1->DataField="image";
imagedc->DataField="image";
AnsiString sql;
Image1->Visible=true;
sql="select * from lx2";
CustomerData->client_dset->Close();
CustomerData->client_dset->DataRequest(sql);
CustomerData->client_dset->Open();
// Image1->Picture->SaveToFile("temp.bmp");
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button4Click(TObject *Sender)
{
byte *imagetemp;
byte *imagedata;
long bytenum,i;
int begini;
bool flag;
flag=false;
TMemoryStream* pms = new TMemoryStream();
TMemoryStream* pms1 = new TMemoryStream();
// TStream * tempstream;
//DataSet->SaveToStream(pms,dfBinary);
Image1->Picture->SaveToFile("temp.bmp");
pms->LoadFromFile("temp.bmp");
bytenum=pms->Size;
imagetemp=new byte [bytenum];
pms->Seek(0,soFromBeginning);
pms->Read(imagetemp,bytenum+1);
for(i=0;i<bytenum;i++)
{
// ShowMessage(AnsiString(imagetemp[i]));
// ShowMessage(AnsiString(int('B')));
if(imagetemp[i]==int('B')&&imagetemp[i+1]==int('M')&&!flag)
{
flag=true;
begini=i;
imagedata=new byte [bytenum-i];
}
if(flag)
{
imagedata[i-begini]=imagetemp[i];
}
}
flag=false;
pms1->Write(imagedata,bytenum-begini);
pms1->Free();
pms->Free();
delete [] imagedata;
delete [] imagetemp;
DeleteFile("temp.bmp");
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button3Click(TObject *Sender)
{
Graphics::TBitmap *bmpfd=new Graphics::TBitmap();
AnsiString imageno;
DBGrid1->DataSource=Form1->client_ds;
imagedc->DataSource=Form1->client_ds;
// DBNavigator1->DataSource=Form1->client_ds;
imagedc->DataField="image";
AnsiString sql;
Image1->Visible=true;
sql="select * from lx2";
CustomerData->client_dset->Close();
CustomerData->client_dset->DataRequest(sql);
CustomerData->client_dset->Open();
CustomerData->client_dset->First();
/* TADOBlobStream *IMAGE;
IMAGE=new TADOBlobStream((TBlobField*)CustomerData->client_dset->FieldByName("image"),bmRead);
bmpfd->LoadFromStream(IMAGE);
Image1->Picture->Bitmap->Assign(bmpfd);
delete IMAGE;
delete bmpfd;
imageno=CustomerData->client_dset->FieldByName("id")->AsString;
ShowMessage(imageno);
sql="select image from lx2 where id='"+imageno+"'";
ShowMessage(sql);
CustomerData->client_dset_image->Close();
CustomerData->client_dset_image->DataRequest(sql);
CustomerData->client_dset_image->Open();
TMemoryStream* pms = new TMemoryStream();
ShowMessage("ok");
void *MyBuffer = malloc(Field->DataSize);
Field->GetData(MyBuffer,true);
pms->Write(MyBuffer,Field->DataSize);
ShowMessage(AnsiString(Field->DataSize));
pms->SaveToFile("c:\\pms.bmp");
free(MyBuffer); */
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -