DIY个照相机,第1张

DIY个照相机,第2张

简介:本文提供了一个完整的Delphi代码,实现了用相机拍照的功能。注意TVideoCap控件支持。
过程Tfrm1。Button2Click(发送方:to object);
Var
JPEG:TJPEGImage;
BMP:tbit map;
my STM:TMemoryStream;
strfilename,strcard:String;
begin
inherited;
str filename:= extract file path(Application。ExeName);
with dbedit 12 . data source . dataset do
begin

如果不是videocap 1 . save as DIB then
begin
显示消息('未能拍照');
中止;
end;//

bmp:= TBitmap。创建;
试试
bmp。LoadFromFile(strfilename+' capture . BMP ');
MyStm:=TMemoryStream。创建;
jpeg:= TJPEGImage。创建;
试试
jpeg。赋值(BMP);
JPEG . compress;
jpeg。save to file(str filename+' capture . jpg ');
str file name:= str file name+' capture . jpg ';
jpeg。LoadFromFile(strfilename);
jpeg。SaveToStream(my STM);
MyStm。位置:= 0;
OpenQry(query1,' select count(1)as CNT from TB _ photo where card _ no = ' ' '+strcard+' ');//先检查有没有这个卡号
openqry (pubqry,' select * from TB _ photo where card _ no = ' '+strcard+' ' ');//打开卡号数据表
{OpenQry是自定义打开数据表的函数
Openqry (qry1: tQuery,ssql:string);
begin
with qry1 do
beign
如果活动,则
close;
SQL . clear;
SQL . add(ssql);
try
open
catch
on E:Exception do error dialog(E . Message,E . help context);
end;//try
end;
end;
}
with query 1 do
begin
if pubqry . fields[0]。如整数> 0则//首先判断该卡号的图片是否存在,如果存在,则替换;否则,插入。
编辑
否则
插入;

FieldByName('card_no ')。AsString:= strcard;
TBlobField(field by name(' photo '))。LoadFromStream(MyStm);
Post;//统一提交
end;//with
finally
MyStm。免费;
JPEG . free;
end;//try
finally
BMP . free;
end;//try
end;//以
结尾;

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » DIY个照相机

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情