#pragma once #include "iGridRowItemCbx.h" // 双下拉(扣型+公母) class X_GUI_GRIDPTY_EXPORT iGridRowItemCbxClasp : public iGridRowItemCbx { Q_OBJECT public: explicit iGridRowItemCbxClasp(iGridRowItem* pParent = NULL); ~iGridRowItemCbxClasp(); // 序列化 virtual void onSerialize(ZxSerializer* ser); virtual void onDeserialize(ZxSerializer* ser); virtual void setParameter(iParameter* p); // 初始化子控件 virtual void initEditor(); virtual void configEditor(); virtual void setDlgBase(QWidget* p); virtual void setBounds(QRectF& rt);//全局 virtual QRectF getRightBounds_Main();//右 QRectF getRightBounds_BP();//公母 QRectF getRightBounds_Btn();//按钮 // 外界传递 virtual bool setCurValue(QVariant o); virtual QVariant getCurValue(); virtual QString getShowValue(); //非激活时显示在右侧的文本 // 隐藏公母 void setVisibleBP(bool b); // 数据范围 virtual QString getParaScales(); // 双击 virtual void onItemDoubleCliked(GridTickPos o); // 其它 virtual void setActive(bool b); public slots: // 改变 //void slotCbxCurItemChanged(int); //void slotGetCbxLists(QStringList& list, int& nCur, bool& b); void slotChangeType(); signals: void sigGetNewType(QString sPara, QString& sType, bool& b); protected: // 填充 void fillCbxItems(); void setCurrentTextOf(QComboBox* pCbx, QString s); // 结果 virtual QVariant getInfoRight(); virtual QString getInfoUnit(); private: QComboBox* m_pCbxTypeExs; QPushButton* m_pBtn; bool m_bVisibleBP; //公母是否显示,在软件中动态修改 };