0

This is about arranging a multimedia object with widgets. Following is what I have tried:

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
{
    m_QPushButton_calibration = new QPushButton("Calibrate", this);
    connect(m_QPushButton_calibration, SIGNAL (released()),this, SLOT (handleButton()));


    QList<QCameraInfo> l_QListQCameraInfo_available_cameras = QCameraInfo::availableCameras();
    if (l_QListQCameraInfo_available_cameras.length() > 2)
    {
        m_QCamera_required_camera = new QCamera (l_QListQCameraInfo_available_cameras[1]);
    }

    QHBoxLayout *layout = new QHBoxLayout;
    layout->addWidget(m_QPushButton_calibration);
    layout->addWidget(m_QCamera_required_camera);

    this->setLayout(layout);
}

It results in :

error: no matching function for call to 'QHBoxLayout::addWidget(QCamera*&)'
     layout->addWidget(m_QCamera_required_camera);
                                                ^

How to arrange QCamera with other widgets in a layout?

Aquarius_Girl
  • 21,790
  • 65
  • 230
  • 411

2 Answers2

2

QCamera itself is not a widget! But from the qt doc we learn:

"QCamera can be used with QCameraViewfinder for viewfinder display, QMediaRecorder for video recording and QCameraImageCapture for image taking."

So I guess what you want might be a QCameraViewfinder:

QCameraViewfinder* cameraView = new QCameraViewfinder (this);

cameraView->setMediaObject (m_QCamera_required_camera);

layout->addWidget(cameraView);
ThorngardSO
  • 1,191
  • 7
  • 7
1

QCamera is not a widget, you should use a QCameraViewfinder (add multimediawidgets to .pro):

QCameraViewfinder *mCameraViewfinder = new QCameraViewfinder(this);
m_QCamera_required_camera->setViewfinder(mCameraViewfinder);

layout->addWidget(m_QPushButton_calibration);
layout->addWidget(mCameraViewfinder);
m_QCamera_required_camera->start();

Complete code

eyllanesc
  • 235,170
  • 19
  • 170
  • 241