QQ登录

只需一步,快速开始

320上位机VC MFC打开电脑自带摄像头

[ 复制链接 ]

320上位机VC MFC打开电脑自带摄像头

320上位机VC MFC打开电脑自带摄像头

打开电脑自带摄像头
功能展示
笔记本电脑都会配有一摄像头,我们当前例程使用微软提供的VFW数字视屏软件包控制我们电脑上的摄像头,效果如图,例程会有打开与关闭摄像头两个按钮操作;

要点提示
VFW主要由一组动态库构成,在我们安装电脑系统时已自动安装,我们编写自序时为了支持VFW,我们得在编译器中添加相应的头文件与库文件#include “vfw.h“ #pragma comment(lib,”vfw32.lib”)#include <afxmt.h>;库文件中提供多个函数与宏用于视频的控制;
HWND VFWAPI capCreateCaptureWindow( LPCSTR lpszWindowName, DWORD dwStyle, int x, int y, int nWidth, int nHeight, HWND hWnd, int nID ); lpszWindowName窗口名称。 dwStyle窗口风格。 X,y窗口左上角坐标。 nWidth, nHeight窗口大小, hWnd父窗口句柄,nID窗口ID;
BOOL capDriverConnect( hwnd, iIndex ); hwnd视屏捕捉窗口的句柄, iIndex 驱动程序范围0—9;
BOOL capPreviewRate( hwnd, wMS ); hwnd视屏捕捉窗口,wMS速率单位MS;
BOOL capPreview( hwnd, f ); hwnd视屏捕捉窗口;F表示激活或禁止预览模式;

实现功能
1.新建基于对话框的应用程序
2.在主对话框头文件添加视频操作支持代码#include "vfw.h"
#pragma comment(lib,“vfw32.lib”) #include <afxmt.h>及两成员变量一线程函数public:
HWND m_hVideoWnd; CEvent m_Event;
static UINT ThreadFun( LPVOID lpParam );//线程函数定义
线程函数的函数体部分参阅源代码;
3.在OnInitDialog()函数中初始化
AfxBeginThread(ThreadFun,(void*)this); //开始一个线程
::WaitForSingleObject(m_Event,INFINITE); //等待线程函数的执行
while(capDriverConnect(m_hVideoWnd,0)!=TRUE) //连接驱动程序
continue;

::SetParent(m_hVideoWnd,*this); //设置父窗口
::SetWindowLong(m_hVideoWnd,GWL_STYLE,WS_CHILD);
::SetWindowPos(m_hVideoWnd,NULL,10,10,300,300,SWP_NOZORDER);

::ShowWindow(m_hVideoWnd,SW_SHOW);
capPreviewRate(m_hVideoWnd,30); //设置预览速率
capPreview(m_hVideoWnd,true); //开始预览
4.添加<关闭摄像头><打开摄像头>实现摄像头的操作;
我们来演示下功能实现的整个过程
请点击此处下载

请先注册会员后在进行下载

已注册会员,请先登录后下载

文件名称:320.上位机VC MFC打开电脑自带摄像头.zip 
文件大小:135.91 KB  售价:11金币
下载权限: 不限 以上或 VIP会员   [购买捐助会员]   [充值积分]   有问题联系我

  

如果您认可,可联系功能定制!

  

如果您着急,充值会员可直接联系发您资料!

  

QQ联系我

微信扫扫联系我

  

  

您的支持是我们创作的动力!  

  

您可花点闲钱积分自助任意充值

  

成为VIP会员 全站资源任意下载永久更新!




回复

使用道具 举报

快速回复 返回列表 客服中心 搜索