#pragma once #include #include "ui_ProgrammPage.h" #include "CViewInterface.h" #include "WaffleProgramPage.h" #include class ProgrammPage : public QWidget { Q_OBJECT public: ProgrammPage(QWidget *parent = nullptr); ~ProgrammPage(); private: //新增矩阵界面 void AddMatrixPage(int bondMatrixVectorIndex, int vectorIndex, PROGRAM_POINT_MATRIX_STRUCT matrixData); void AddOutMatrixPage(int vectorIndex, PROGRAM_BOND_MATRIX_STRUCT matrixData); //往后端新增矩阵数据 void AddMatrixParam(); //更新参数,根据选择的点更新界面参数显示 void UpdatePageParam(); //参数被修改后发送给后端 void ParamChangeEvent(); //参数被修改后发送给后端 void MatrixChangeEvent(); //更新取晶参数 void UpdatePagePickParam(); //更新固晶参数 void UpdatePageBondParam(); void initPage(); private: Ui::ProgrammPageClass ui; CManageDB* m_manageDB = nullptr; //当前界面显示的参数 ns_db::BOND_INFO_STRUCT m_curBondInfo; ns_db::PICKBOND_PARAM_STRUCT m_curWaferPickParam; ns_db::PICKBOND_PARAM_STRUCT m_curCalibPlaceParam; ns_db::PICKBOND_PARAM_STRUCT m_curCalibPickParam; ns_db::PICKBOND_PARAM_STRUCT m_curBondParam; ns_mat::POINT_INFO_STRUCT m_curPointInfo; std::vector m_vecParam; std::vector m_vectBondMatrixs; std::vector m_vecSubMatrixs; //子矩阵控件,ID从1开始 QMap> m_mapSubMatrixControls; int m_curPtIndex = 0; WaffleProgramPage* m_pWaffleProgrammPage = nullptr; WaferProgramPage* m_WaferProgramPage = nullptr; };