#include "widget.h" #include "ui_widget.h" #include #include #include "cameraplayer.h" widget::widget(QWidget *parent) : QWidget(parent), ui(new Ui::widget) { ui->setupUi(this); initCameraPlayer(); } widget::~widget() { delete m_cameraPlayer1; m_cameraPlayer1 = nullptr; delete m_cameraPlayer2; m_cameraPlayer2 = nullptr; delete m_cameraPlayer3; m_cameraPlayer3 = nullptr; delete m_cameraPlayer4; m_cameraPlayer4 = nullptr; delete ui; } /* 开启预览按钮 */ void widget::on_pBtn_startRealPlay_clicked() { m_cameraPlayer1->startPlay(); m_cameraPlayer2->startPlay(); m_cameraPlayer3->startPlay(); m_cameraPlayer4->startPlay(); } /* 重新创建窗口 */ void widget::on_pBtn_reCreate_clicked() { if(m_cameraPlayer1 != nullptr) { delete m_cameraPlayer1; m_cameraPlayer1 = nullptr; } if(m_cameraPlayer2 != nullptr) { delete m_cameraPlayer2; m_cameraPlayer2 = nullptr; } if(m_cameraPlayer3 != nullptr) { delete m_cameraPlayer3; m_cameraPlayer3 = nullptr; } if(m_cameraPlayer4 != nullptr) { delete m_cameraPlayer4; m_cameraPlayer4 = nullptr; } initCameraPlayer(); on_pBtn_startRealPlay_clicked(); } /* 窗口缩放事件 */ void widget::resizeEvent(QResizeEvent *event) { QWidget::resizeEvent(event); /* 获取窗口大小 */ QSize size = ui->widget_display1->size(); // ui->m_cameraPlayer1->resize(size); // ui->m_cameraPlayer2->resize(size); // ui->m_cameraPlayer3->resize(size); // ui->m_cameraPlayer4->resize(size); m_cameraPlayer1->setPlayWndSize(size); m_cameraPlayer2->setPlayWndSize(size); m_cameraPlayer3->setPlayWndSize(size); m_cameraPlayer4->setPlayWndSize(size); } /* 显示事件 */ void widget::showEvent(QShowEvent *event) { QWidget::showEvent(event); /* 获取窗口大小 */ QSize size = ui->widget_display1->size(); m_cameraPlayer1->setPlayWndSize(size); m_cameraPlayer2->setPlayWndSize(size); m_cameraPlayer3->setPlayWndSize(size); m_cameraPlayer4->setPlayWndSize(size); } void widget::initCameraPlayer() { /* 创建摄像机播放器 */ m_cameraPlayer1 = new CameraPlayer; // QString imagePath = QApplication::applicationDirPath() + "/2.jpg"; // QImage image(imagePath); // QImage image(1653, 899, QImage::Format_RGB888); QImage image(1666, 720, QImage::Format_RGB888); // QImage image(1280, 720, QImage::Format_RGB888); m_cameraPlayer1->setImage(image); m_cameraPlayer1->initCamera("192.1.2.73", 8000, "admin", "LH123456"); m_cameraPlayer1->startRealPlay(1); /* 设置播放窗口 */ m_cameraPlayer1->setPlayWndParent(ui->widget_display1); m_cameraPlayer1->setPlayWndSize(ui->widget_display1->size()); /* 创建其他播放窗口 */ m_cameraPlayer2 = new CameraPlayer; m_cameraPlayer2->setImage(image); m_cameraPlayer2->initCamera("192.1.2.73", 8000, "admin", "LH123456"); m_cameraPlayer2->startRealPlay(1); m_cameraPlayer2->setPlayWndParent(ui->widget_display2); m_cameraPlayer2->setPlayWndSize(ui->widget_display2->size()); m_cameraPlayer3 = new CameraPlayer; m_cameraPlayer3->setImage(image); m_cameraPlayer3->initCamera("192.1.2.73", 8000, "admin", "LH123456"); m_cameraPlayer3->startRealPlay(1); m_cameraPlayer3->setPlayWndParent(ui->widget_display3); m_cameraPlayer3->setPlayWndSize(ui->widget_display3->size()); m_cameraPlayer4 = new CameraPlayer; m_cameraPlayer4->setImage(image); m_cameraPlayer4->initCamera("192.1.2.73", 8000, "admin", "LH123456"); m_cameraPlayer4->startRealPlay(1); m_cameraPlayer4->setPlayWndParent(ui->widget_display4); m_cameraPlayer4->setPlayWndSize(ui->widget_display4->size()); }