#pragma once #include "ui_CToolDialog.h" #include "../../Common/DllToolCommon.h" #include "../../ShowUnit/HWndUnit.h" #include #include #include #include class ToolDialogImpl : public DllToolDialog { Q_OBJECT public: ToolDialogImpl(QWidget *parent, DllTool* pDllTool); ~ToolDialogImpl(); Ui::CToolDialog ui; public: virtual VPEnum::RETURN_VALUE Execute(); virtual void Running(bool bRun); virtual bool Serialized(QDataStream& ar, bool bIsOut); protected: public: HImage m_Image; signals: void sigUpdateUI(); private slots: void on_UpdateUI(); void on_btnOK_clicked(); void on_btnCancel_clicked(); void on_btnExecute_clicked(); void on_btnChagePath_clicked(); private: HWndUnit* hwndUnit; // //用来在显示控件内部存图的路径 QString m_strFilePath; //根据此执行状态,确定写入的图片存到 ok 还是 ng文件夹 int m_nExecuteState; bool m_bEnableSave; private: QThreadPool m_SaveThreadPool; public: QVector m_SaveImages; int m_nThreadState; int m_nImageIndex; QString m_strTempPath; }; // Save的执行线程体 class _SaveThread : public QObject, public QRunnable { Q_OBJECT public: _SaveThread(ToolDialogImpl* pDlg) { this->m_pDlg = pDlg; }; ~_SaveThread() {}; protected: // 线程函数 virtual void run(); private: ToolDialogImpl* m_pDlg; };