【发布时间】:2018-02-08 09:22:19
【问题描述】:
我在 camera.qml 中有 qml 相机小部件。 qml 组件是从放置在后台堆栈小部件上的 Qt 小部件“WidgetCamera”加载的。小部件在创建时已启动相机设备。
如何使相机仅在小部件显示在前台时启动。反之亦然,当小部件进入后台时如何释放相机?
camera.qml
Item {
width: 640
height: 360
Camera {
id: camera
}
VideoOutput {
source: camera
anchors.fill: parent
}
}
widgetCamera.h
class WidgetCamera : public QWidget
{
Q_OBJECT
public:
WidgetCamera() {
QQuickWidget *qw= new QQuickWidget;
qw->setSource(QUrl("qrc:///camera.qml"));
// ...
}
}
主窗口.h
class MainWindow : QMainWindow
{
Q_OBJECT
public:
MainWindow() {
QStackedWidget *sw = new QStackedWidget;
sw->addWidget(new QWidget());
sw->addWidget(new WidgetCamera());
// ...
}
}
【问题讨论】:
-
解释清楚,我不明白你想要什么。
-
我很确定问题是关于如何使小部件不总是捕获相机,而只有当小部件实际可见时。
-
是的。问题是关于如何使小部件不总是捕获相机。
标签: qt camera qml android-camera