网站大量收购闲置独家精品文档,联系QQ:2885784924

VFP照像程序实现源程序及说明.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
VFP照像程序说明 硬件准备   1. 能运行Windows 98或更高的计算机。   2. USB接口摄像头一只。   将USB摄像头接入电脑,安装好驱动程序和应用软件,打开应用软件,在Video Format设置中将其Image Size(图像尺寸)设为CIF(352×288)。   软件准备   1. Visual Foxpro(6.0以上版本,以下简称VFP)。   2. AvCap.ocx控件   AvCap是一个基于DirectShow过滤器的音/视频捕捉和预览的ActiveX控件。在应用程序或页面中放一个AvCap,只需很少的代码就可让您的软件支持音/视频捕捉了。   3. PicClp32.ocx控件(类名PictureClip)。   本控件位于Windows的System或System32文件夹内,在安装VFP时被自动安装。   由于使用AvCap控件所捕捉的图像尺寸与实际应用时的图像尺寸不太一致,因此需用PictureClip控件将其剪裁为指定尺寸。用它的Picture属性将源位图加载到控件中,再用ClipX和ClipY属性指定剪裁区域的左上角。用 ClipHeight和ClipWidth属性指定剪裁区域的范围。然后利用VFP的SavePicture函数将其写入到指定的位图文件中。   编程   1. 准备工作   (1)为便于管理,在某驱动器(如D盘)的根目录下建一子目录Photo,将下载的AcCap.ocx控件拷入该目录,用“画笔”程序画一图像,高×宽=288×216(如图1),命名为Default.bmp,将其保存入Photo目录。在本目录下再建一子目录Bmp,用于存放拍照的照片。 图1 默认图片   (2)建一数据库表Student.dbf,将其存入Photo目录,表结构如图2。 图2 数据表   在图2所示表中,索引类型设为“候选索引”的目的是保证学生在数据库表中的惟一性。在电子照相时,以学号作为该学生的照片文件名,可避免重复。xh(学号)字段的8位可按如下格式输入,其中前四位代表入学年级,后四位代表学生序列,学号范围20049999。   (3)注册控件:可在命令行方式下注册两个控件,如:regsvr32 AvCap.ocx、regsvr32 PicClp32.ocx,也可在VFP环境中,通过菜单“工具→选项→控件→ActiveX控件”方式来注册。   2. 制作表单   (1)运行VFP,建立如图3所示的表单集Formset1,添加两个表单Form1和Form2。设置Form1的Caption属性为预览窗口,在其内添加AvCap控件,控件的Name属性设为OleAvCap;设置Form2的Caption属性为照相窗口,在其内添加如图3所示的6个控件(图像剪裁控件PictureClip、图像控件Image、列表框控件List、命令按钮控件CommandButton三个),控件的Name属性分别设为OlePicClip 、Image1、List1、CmdPhoto、CmdNext、CmdQuit。 3 制作表单   (2)将数据库表Student.dbf添加到该表单集的数据环境中去,将CurSor1的Order属性设为xh。   (3)编写程序代码:   在Formset1的Init Event(即Formset1.Init)中添加以下代码:   IF thisformset.form1.oleAvCap.CurVcd=0   thisformset.form1.oleAvCap.PlayState   =1   ELSE    =Messagebox(视频设备连接不上! +chr(13)+请检查电源线或数据线!, 0+16,错误信息!)    RETU .F.   ENDIF   thisformset.form2.CmdPhoto.setfocus   在Form1的Init Event(即Form1.Init)中添加以下代码:   this.Left=3   this.Top=1   this.Width=216 与下面要拍照的照片宽度一致   this.Height=312   this.MaxButton=.F.   this.MinButton=.F.   this.ControlBox=.F.   this.BorderStyle=1   this.Caption=预览窗口   *****以下设置AvCap控件的大小及位置   this.OleAvCap.Top=12   this.OleAvCap.Width=352   this.OleAvCap.

文档评论(0)

e71ah65wn9 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档