【QT】QT调用电脑摄像头并拍照

建议搭配视频食用:

【【QT】QT调用电脑摄像头并拍照】 https://www.bilibili.com/video/BV1pc411G7qy/?share_source=copy_web&vd_source=c0d9dd4e64b88e4dbf93ac009c2010dc

一、在pro文件中添加‘multimedia multimediawidgets’

二、在ui界面创建一个widget并改名为camera用于展示摄像头内容和pushbutton 用于拍照,并右键pushbutton点击转到槽备用

三、对.h文件的操作

添加头文件

//摄像头
#include <QCameraImageCapture>
#include <QCamera>

在private中创建两个摄像头对象

//创建两个摄像头对象
    QCamera *ca;
    QCameraImageCapture *capture;

四、对.cpp文件的操作

添加头文件

//调用摄像头
#include <QCameraInfo>
#include <QCamera>
#include <QCameraViewfinder>
#include <QCameraImageCapture>
#include <QPixmap>
//弹窗
#include <QMessageBox>

编写调用摄像头代码

//获取可用摄像头设备并输出在控制台
    QList<QCameraInfo> infos = QCameraInfo::availableCameras();
    qDebug() << infos.value(0).deviceName() << ":" <<infos.value(0).description();
    QString camera = infos.value(0).deviceName();
    qDebug() << camera;
    //显示摄像头
    ca =new QCamera(camera.toUtf8() ,this );
    ui->camera->show();

    QCameraViewfinder *v2 = new QCameraViewfinder(ui->camera);
    v2->resize(ui->camera->size());
    ca->setViewfinder(v2);
    v2->show();
    ca->start();

编写点击按钮时的拍照代码

五、最后运行

补档

添加头文件

#include <QDateTime>

将点击事件函数改为如下格式

经验分享 程序员 微信小程序 职场和发展