如果您希望以同步方式判断摄像头是否已经打开,可以使用以下方法:
QCameraInfo cameraInfo = QCameraInfo::defaultCamera();
if (cameraInfo.isCameraAvailable()) {
QCamera camera(cameraInfo);
if (camera.state() == QCamera::ActiveState) {
// 摄像头已经打开
} else {
// 摄像头未打开
}
} else {
// 摄像头不可用
}
这里通过 QCameraInfo
获取默认摄像头信息,并检查其是否可用。然后,创建一个 QCamera
对象并检查其状态是否为 QCamera::ActiveState
,从而确定摄像头是否已经被打开。
请注意,这是一个同步的方法,但在实际应用中,通常建议使用信号与槽机制来监测异步操作的状态变化。
内容由零声教学AI助手提供,问题来源于学员提问