#ifndef FORMINFO_H #define FORMINFO_H #include #include #include // #include #include #include #pragma execution_character_set("utf-8") namespace Ui { class FormInfo; } class FormInfo : public QWidget { Q_OBJECT public: explicit FormInfo(QWidget *parent = nullptr, QString strSlfName="", QString strWellName="", QString strTrackName="", QString strLineName="", QColor lineColor=QColor(255,0,0)); ~FormInfo(); private: Ui::FormInfo *ui; protected: void paintEvent(QPaintEvent *event); public slots: void dragEnterEvent(QDragEnterEvent* event); void dragMoveEvent(QDragMoveEvent* event); void dropEvent(QDropEvent* event); //属性 //左刻度 void s_ChangeLeftScale(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, double newLeftScale); //右刻度 void s_ChangeRightScale(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, double newRightScale); //刻度类型 void s_ChangeScaleType(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, QString strScaleType); //线颜色 void s_ChangeLineColor(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, QColor lineColor); //线宽 void s_ChangeLineWidth(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, double width); //线型 void s_ChangeLineStyle(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, Qt::PenStyle lineStyle); //岩性填充-不填充 void s_ClearFillMode(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName); //岩性填充-填充 void s_ChangeFillMode(QString strUuid, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, QString newFillType, QString newTargetLine, QColor newColor, QString newLithosImage, QString newHeadFill, float vMin, float vMax, QColor frontColor, QColor backColor, QString newFillMode); public: QString m_strUuid; QString m_strSlfName; QString m_strWellName; QString m_strTrackName; QString m_strLineName; QColor m_lineColor; // double m_dWidth; Qt::PenStyle m_lineStyle; //X坐标 float m_vmax; float m_vmin; QString m_strScaleType;//刻度类型(线性,对数) //岩性填充 QString m_newFillMode; QString m_newHeadFill; QString m_newFillType; QColor m_newColor;//填充颜色 QString m_newLithosImage = "";//岩性图片 QColor m_frontColor;//岩性前景色 QColor m_backColor;//岩性背景色 public: void setLineWidth(double dWidth); double getLineWidth(); void setLineStyle(Qt::PenStyle lineStyle); Qt::PenStyle getLineStyle(); void setVMax(float vmax); float getVMax(); void setVMin(float vmin); float getVMin(); void setFrontColor(QColor frontColor); QColor getFrontColor(); void setBackColor(QColor backColor); QColor getBackColor(); QJsonObject makeJson(); //public: // void mousePressEvent(QMouseEvent *event) override { // if (event->button() == Qt::LeftButton) { // startPosition = event->globalPos() - frameGeometry().topLeft(); // event->accept(); // } // } // void mouseMoveEvent(QMouseEvent *event) override { // if (event->buttons() & Qt::LeftButton) { // move(event->globalPos() - startPosition); // event->accept(); // } // } private: QPoint startPosition; }; #endif // FORMINFO_H