Delphi实现拍照控件的程序代码
2014-08-09 17:09
369 查看
完整的delphi拍照控件代码,实现利用摄像头进行拍照的功能。需要TVideoCap控件支持。
procedure Tfrm1.Button2Click(Sender: TObject);
Var
jpeg: TJPEGImage;
bmp: TBitmap;
MyStm:TMemoryStream;
strfilename,strcard:String;
begin
inherited;
strfilename:=extractfilepath(Application.ExeName);
with DBEdit12.DataSource.DataSet do
begin
if not VideoCap1.SaveAsDIB then
begin
ShowMessage('拍摄照片失败');
Abort;
end;//
bmp:= TBitmap.Create;
try
bmp.LoadFromFile(strfilename+ 'Capture.bmp' );
MyStm:=TMemoryStream.Create;
jpeg:= TJPEGImage.Create;
try
jpeg.Assign( bmp );
jpeg.compress;
jpeg.SaveTofile( strfilename+'Capture.jpg');
strfilename:=strfilename+'Capture.jpg';
jpeg.LoadFromFile(strfilename);
jpeg.SaveToStream(MyStm);
MyStm.Position:=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
if active then
close;
sql.clear;
sql.add(ssql);
try
open
catch
on E: Exception do ErrorDialog(E.Message, E.HelpContext);
end;//try
end;
end;
}
with query1 do
begin
if pubqry.Fields[0].AsInteger >0 then //先判断此卡号的图片是否存在,若存在,替换;否则,插入。
Edit
else
Insert;
FieldByName('card_no').AsString :=strcard;
TBlobField(FieldByName('photo')).LoadFromStream(MyStm);
Post; //统一提交
end;//with
finally
MyStm.Free;
jpeg.free;
end; //try
finally
bmp.free;
end;//try
end;//with
end;
procedure Tfrm1.Button2Click(Sender: TObject);
Var
jpeg: TJPEGImage;
bmp: TBitmap;
MyStm:TMemoryStream;
strfilename,strcard:String;
begin
inherited;
strfilename:=extractfilepath(Application.ExeName);
with DBEdit12.DataSource.DataSet do
begin
if not VideoCap1.SaveAsDIB then
begin
ShowMessage('拍摄照片失败');
Abort;
end;//
bmp:= TBitmap.Create;
try
bmp.LoadFromFile(strfilename+ 'Capture.bmp' );
MyStm:=TMemoryStream.Create;
jpeg:= TJPEGImage.Create;
try
jpeg.Assign( bmp );
jpeg.compress;
jpeg.SaveTofile( strfilename+'Capture.jpg');
strfilename:=strfilename+'Capture.jpg';
jpeg.LoadFromFile(strfilename);
jpeg.SaveToStream(MyStm);
MyStm.Position:=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
if active then
close;
sql.clear;
sql.add(ssql);
try
open
catch
on E: Exception do ErrorDialog(E.Message, E.HelpContext);
end;//try
end;
end;
}
with query1 do
begin
if pubqry.Fields[0].AsInteger >0 then //先判断此卡号的图片是否存在,若存在,替换;否则,插入。
Edit
else
Insert;
FieldByName('card_no').AsString :=strcard;
TBlobField(FieldByName('photo')).LoadFromStream(MyStm);
Post; //统一提交
end;//with
finally
MyStm.Free;
jpeg.free;
end; //try
finally
bmp.free;
end;//try
end;//with
end;
相关文章推荐
- delphi下实现控制其它窗体中的控件代码模板(delphi 7安装程序)
- 让在vc6创建的程序中,控件可以随xp风格的改变而变化,不用再程序中添加代码来自己实现~
- [代码]Delphi实现检测程序是否在VMWare中运行
- [代码]Delphi实现检测程序是否在VMWare中运行
- 【asp.net 】使用js结合hidden控件实现在后台运行一段程序后提示确认,确认通过后继续执行后台代码~~~
- Delphi + delphiX( DirectX Delphi控件 ) 实现水纹效果。··大概翻译了下里面的算法···重新用程序里表现了下
- 语音聊天程序实现(INDY, ACM, DELPHI)
- Delphi编程实现程序快捷方式[原创]
- Delphi 程序窗口动画及正常排列平铺的实现
- Delphi编程实现程序快捷方式
- Java2实用教程(第二版)程序代码——第二十六章 常见数据结构的Java实现
- 利用JavaScript实现类似Delphi中数据敏感控件DBTextBox!
- VC程序中实现控件的动态生成与响应
- Windows平台下程序日志的设计和实现(下:代码)
- Delphi用Sender参数实现代码重用
- DELPHI实现摄像头拍照 [转]
- Delphi程序与Chm帮助关联的简单实现
- 求助操作系统启动,自动运行程序,用DELPHI 要怎么写代码?
- 一段js代码模仿实现sina广告条--转自griefforyou的程序人生
- delphi实现批量缩略图生成工具开发代码