以下是一个使用Qt 6.0以上版本显示摄像头设备的简单示例:
#include <QCamera>
#include <QCameraInfo>
#include <QCameraViewfinder>
#include <QVBoxLayout>
#include <QWidget>
int main(int argc, char *argv[]) {
QApplication app(argc, argv);
QWidget window;
QVBoxLayout layout(&window);
// 获取可用摄像头设备列表
QList<QCameraInfo> cameras = QCameraInfo::availableCameras();
if (cameras.isEmpty()) {
qDebug() << "No cameras found.";
return -1;
}
// 创建摄像头对象
QCamera *camera = new QCamera(cameras.at(0));
// 创建取景器视图窗口
QCameraViewfinder *viewfinder = new QCameraViewfinder();
// 设置取景器为主要显示部件
camera->setViewfinder(viewfinder);
// 添加取景器到布局中
layout.addWidget(viewfinder);
window.setLayout(&layout);
window.show();
return app.exec();
}
这个示例使用QCamera
类获取可用的摄像头设备列表,然后选择第一个设备进行初始化。接着创建了一个QCameraViewfinder
对象作为取景器视图窗口,并将其设置为摄像头对象的主要显示部件。最后,将取景器添加到垂直布局中,并显示窗口。
请确保已经正确包含必要的Qt模块和头文件,并在项目配置中链接所需的库。
内容由零声教学AI助手提供,问题来源于学员提问