#pragma once #include #include "ui_QtDefectSet.h" #include "QScreen" #include "QDebug.h" #include #include #include #include #include #include #include "QHeaderView.h" #include "QMouseEvent" #include "qmessagebox.h" #include "qfiledialog.h" #include "qdatetime.h" #include "qmutex.h" #include "qfuture.h" #include "QtConcurrent/qtconcurrent" #include "QCheckBox" //#include "struct.h" class QtDefectSet : public QMainWindow { Q_OBJECT public: QtDefectSet(QMainWindow *parent = nullptr); ~QtDefectSet(); //相机信息列表 //设置项目的json配置文件路径 void setJsonName(QString jsonName); QJsonObject load_camera_cfg(QString cfg); private: Ui::QtDefectSetClass ui; QMessageBox* myMessage; QQueue< QCheckBox*> myQCheckBoxQueue; QString cfg_name; QString currPath; QString json_cfg_file_path;//camera_cfg.json"; QString BackUp_json_cfg_file_path;//camera_cfg.json"; QJsonObject programObj; QJsonObject current_programObj;//修改后,未保存的配置文件; QJsonArray stationArray; signals: void SaveDefectNames(); void reLoadJsonSetParameter(QStringList moduleKeyList); protected: void mouseMoveEvent(QMouseEvent* event) override; void mousePressEvent(QMouseEvent* event) override; void mouseReleaseEvent(QMouseEvent* event) override; private: QPoint m_lastPos; public: enum MousePoss { LeftUp = 0, Up, RightUp, Right, RightDown, Down, LeftDown, Left, Middle }; private: MousePoss mp_curPos; //记录鼠标当前所在区域的变量 //改变窗口的大小 void changeWindowSize(MousePoss type, QRect& wid, QPoint ptemp, int minWidth, int minHeight); //修改鼠标样式 void setCursorType(MousePoss type); //计算鼠标位置 MousePoss calcmouseposs(QPoint p); };