У меня есть следующий фрагмент кода:Создание QVideoWidget в Qt5
#include <QtWidgets/QtWidgets>
#include <QtMultimedia/QCamera>
#include <QtMultimedia/QMediaPlayer>
int main(int argc, char * argv[])
{
QApplication testQt(argc, argv);
QMainWindow w;
QWidget videoContainer(&w);
w.setCentralWidget(&videoContainer);
QVideoWidget videoWidget(&videoContainer);
QCamera cam(&w);
cam.setViewfinder(&videoWidget);
cam.start();
w.show();
return testQt.exec();
}
, в котором я пытаюсь создать главное окно, создать контейнер виджет для отображения видео, создать VideoWidget в этом контейнере, и затем, наконец, установите видоискатель камеры на этот видеоусилитель. Однако, когда я пытаюсь сделать это, я получаю ошибку
переменная имеет неполный тип «QVideoWidget»
Почему я получаю эту ошибку?
Сладкое! Оно работает. Любопытно: если этот заголовок должен быть включен, то почему он ранее не жаловался, что QVideoWidgets был неопределенным символом или чем-то подобным? – 1110101001
@ 1110101001: не знаю, пожалуйста, предоставьте SSCCE для самоанализа. – lpapp
@ 1110101001 Заголовки QMultmedia могут найти объявление для класса QVideoWidget, но определения для этого класса добавляются только при добавлении мультимедийных виджетах в конфигурацию проекта, мультимедиа-виджеты связывают проект с определением класса и библиотеками – Marware