BCB6sp4+2k存取JPEG图像,绝对好用!

来源:互联网 发布:java super 编辑:程序博客网 时间:2024/05/21 19:38
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 160x600, 创建于 08-4-23MSDN */google_ad_slot = "4367022601";google_ad_width = 160;google_ad_height = 600;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>

BCB6sp4里调试通过,欢迎大虾批评指正。

//OpenDialog1打开JPEG图像,Edit1保存图像地址,Image1显示图像//其他格式的图像文件没有试验,可以试试。

&nbsp;&nbsp;&nbsp;OpenDialog1->FileName="";&nbsp;&nbsp;&nbsp;if(OpenDialog1->Execute())&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Edit1->Text=&nbsp;OpenDialog1->FileName;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Image1->Picture->LoadFromFile(Edit1->Text);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}

//下面:把图像保存到SQLServer中

&nbsp;if(!Edit1->Text.IsEmpty())&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ADOQuery1->Close();&nbsp;&nbsp;&nbsp;//自行添加ADOConnention,并配置&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ADOQuery1->SQL->Clear();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ADOQuery1->SQL->Add("Select*fromimgs");&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ADOQuery1->Open();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ADOQuery1->Insert();

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ADOQuery1->FieldByName("imgaddress")->AsString=Edit1->Text;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ADOQuery1->FieldByName("imgID")->AsInteger=Edit2->Text.toInt();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//保存图像的编号&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TBlobField*field=dynamic_cast<TBlobField*>(ADOQuery1->FieldByName("img"));//img是image类型的数据&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;field->LoadFromFile(Edit1->Text);&nbsp;//这里是关键,要直接从文件调。不要调Image1,这样很容易出“Jepgerror#41”错误

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ADOQuery1->Post();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ADOQuery1->Close();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}

&nbsp;//从数据库里读取图像

ADOQuery1->Close();ADOQuery1->SQL->Clear();ADOQuery1->SQL->Add("Select*fromimgs");AnsiStringddd="whereimgID="+Edit1->Text;ADOQuery1->SQL->Add(ddd);ADOQuery1->Open();if(ADOQuery1->RecordCount==1){&nbsp;&nbsp;&nbsp;TStream*Stream1;&nbsp;TJPEGImage&nbsp;&nbsp;*Pjp=newTJPEGImage();&nbsp;try&nbsp;{&nbsp;&nbsp;&nbsp;Stream1=ADOQuery1->CreateBlobStream(ADOQuery1->FieldByName("img"),bmRead);&nbsp;&nbsp;&nbsp;Pjp->LoadFromStream(Stream1);&nbsp;&nbsp;&nbsp;Image2->Picture->Assign(Pjp);&nbsp;&nbsp;&nbsp;deleteStream1;&nbsp;}&nbsp;__finally&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;deletePjp;&nbsp;}&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

PS:第一次发文章,不知道格式怎么样。^_^

<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 160x600, 创建于 08-4-23MSDN */google_ad_slot = "4367022601";google_ad_width = 160;google_ad_height = 600;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
原创粉丝点击